[omniORB] linker errors building omniORB_280pre1 on NT 4.0

Sai-Lai Lo S.Lo@uk.research.att.com
30 Jul 1999 10:23:54 +0100


Hm.. Perhaps the creation of omniORB2.def was interrupted and you have a
zero length file? Try delete omniORB* in the sharedlib directory and try
again.

Here is an explanation of how the dll is created:

1. THe file omniORB2.def is created by a pipeline of dumpbin, sort and grep
   to extract the export symbols in the library.

2. The linker is then invoked with omniORB2.def as the argument.

Sai-Lai

>>>>> Lars Immisch writes:

> Hi,
> I get linker errors when I try to build the omniORB_280pre1 on NT 4.0.
> Specifically, building src/lib/omniORB2/orbcore/sharedlib fails with:

> making export in src/lib/omniORB2/orbcore/sharedlib...
> (libs="wsock32.lib advapi32.lib omnithread2_rt.lib"; \
>          rm -f omniORB280_rt.dll; \
>          ../../../../../bin/x86_win32/linkwrapper -gnuwin32
> -out:omniORB280_rt.dll -DLL   -def:omniORB2.def
> -IMPLIB:omniORB280_rt.lib -libpath:../../../../../lib/x86_win32
> bootstrap_i.o constants.o corbaBoa.o corbaObject.o corbaOrb.o
> corbaString.o exception.o giopClient.o giopServer.o initFile.o ior.o
> libcWrapper.o mbufferedStream.o nbufferedStream.o object.o objectRef.o
> objectKey.o ropeFactory.o strand.o scavenger.o exceptn.o proxyCall.o
> current.o policy.o orbservice.o domainManager.o relStream.o tcpSocket.o
> tcpSocketMTfactory.o  gatekeeper.o logIOstream.o bootstrapstub.o
> Namingstub.o msvcdllstub.o $libs; \
>         )
> Microsoft (R) 32-Bit Incremental Linker Version 5.10.7303
> Copyright (C) Microsoft Corp 1992-1997. All rights reserved.

>    Creating library omniORB280_rt.lib and object omniORB280_rt.exp
> omniORB280_rt.exp : error LNK2001: unresolved external symbol "public:
> __thiscall _CORBA_ConstrType_Variable_OUT_arg<struct
> CosNaming::Binding,class _CORBA_ConstrType_Variable_Var<struct
> CosNaming::Binding>>::_CORBA_ConstrType_Variable_OUT_arg<struct
> CosNaming::Binding,class _CORBA_ConstrType_Variable_Var<struct
> CosNaming::Binding>>(class _CORBA_ConstrType_Variable_Var<struct
> CosNaming::Binding> &)"
> (??0?$_CORBA_ConstrType_Variable_OUT_arg@UBinding@CosNaming@@V?$_CORBA_ConstrType_Variable_Var@UBinding@CosNaming@@@@@@QAE@AAV?$_CORBA_ConstrType_Variable_Var@UBinding@CosNaming@@@@@Z)

> And then follow 322 more unresolved externals and finally:

> omniORB280_rt.dll : fatal error LNK1120: 323 unresolved externals

> I must admit I am somewhat lost in the makefiles...

> I have successfully used my build setup with omniORB_2.7.1, and I have
> made sure that the path to $(SORT) is set correctly.

> Thanks in advance,

> Lars Immisch



-- 
Sai-Lai Lo                                   S.Lo@uk.research.att.com
AT&T Laboratories Cambridge           WWW:   http://www.uk.research.att.com 
24a Trumpington Street                Tel:   +44 1223 343000
Cambridge CB2 1QA                     Fax:   +44 1223 313542
ENGLAND