[ros-dev] linkage problem

Eric Kohl eric.kohl at t-online.de
Sun Jan 1 22:04:46 CET 2006

Saveliy Tretiakov wrote:
> When I try to link advapi32 with two widl-generated files (scm_client 
> and eventlog_client) I get conflict:
> [LD] output-i386\lib\advapi32\advapi32.dll
> obj-i386\include\idl\svcctl_c.o: In function `ScmrCloseServiceHandle':
> D:/trunk/reactos/obj-i386/include/idl/svcctl_c.c:87: multiple definition 
> of `__MIDL_ProcFormatString'
> obj-i386\include\idl\eventlogrpc_c.o:D:/trunk/reactos/obj-i386/include/idl/eventlogrpc_c.c:87: 
> first defined here
> obj-i386\include\idl\svcctl_c.o: In function `ScmrLockServiceDatabase':
> D:/trunk/reactos/obj-i386/include/idl/svcctl_c.c:245: multiple 
> definition of `__MIDL_TypeFormatString'
> obj-i386\include\idl\eventlogrpc_c.o:D:/trunk/reactos/obj-i386/include/idl/eventlogrpc_c.c:182: 
> first defined here
> collect2: ld returned 1 exit status
> make: *** [output-i386\lib\advapi32\advapi32.dll] Error 1
> How to solve this?

I just committed a patch that makes WIDL generate static type and proc 
format string variables. This will enable you to link scm_client and 
eventlog_client to advapi32.dll.

Eric Kohl

More information about the Ros-dev mailing list