Re: Mixed libraries in linker command line
- From: "Chris Slowinski" <chris.slowinski@xxxxxxxxxxxxxxxx>
- Date: Wed, 8 Feb 2006 11:32:01 -0700
A little more information: the problem seems to be caused by setting project
dependencies. The libraries after the standard Windows ones are added by
the dependencies "manager". Unfortunately, while the libraries are from the
correct projects, the actual compiled units being included are erroneous
(using Debug versions with Release and vice versa). The version of the
library that appears is dependent on the Solution Configuration. For
example, if Release is set, then the Release versions of the dependents will
automatically be inserted (for Release and Debug).
Has anyone seen this before?
Chris
"Chris Frey" <chris.frey@xxxxxxxxxxxxxxxx> wrote in message
news:OHSRBBNLGHA.2336@xxxxxxxxxxxxxxxxxxxxxxx
We are currently having a problem with the linker settings in a solution
that contains multiple projects (solutions with 24 and 130+ behave the
same). For example, the following linker command line options appear in a
release build:
/OUT:"..\..\lib\TAO_IORInterceptor.dll" /VERSION:1.4006 /INCREMENTAL:NO
/NOLOGO /LIBPATH:"." /LIBPATH:"..\..\lib" /DLL /DEBUG
/PDB:"..\..\lib/IORInterceptor.pdb" /SUBSYSTEM:CONSOLE /OPT:REF /OPT:ICF
/IMPLIB:"..\..\lib\TAO_IORInterceptor.lib" /MACHINE:X86 ACE.lib TAO.lib
TAO_PortableServer.lib TAO_Valuetype.lib TAO_ObjRefTemplate.lib
kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib
shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib
\Tao\1_4a\ACE_wrappers\lib\TAO_Codesetd.lib
\Tao\1_4a\ACE_wrappers\lib\TAO_PortableServerd.lib
\Tao\1_4a\ACE_wrappers\lib\TAO_ObjRefTemplated.lib
\Tao\1_4a\ACE_wrappers\lib\TAOd.lib
\Tao\1_4a\ACE_wrappers\lib\TAO_Valuetyped.lib
As you can see, the TAO*d.lib files are included in addition to their
release counterparts. The correct link line should end after the standard
libraries (odbc, oleaut, ole, etc). If we check the Input configuration
(additional dependencies) everything looks correct.
Changing the build configuration on the standard toolbar before loading
the properties of a project results in different "extra" libraries
appearing on the linker command line.
Loading the project file into notepad we can see that the Tao\1_4a* path
does not appear anywhere in the file. It also does not appear in the main
solution file or anywhere in the Visual Studio options (VC++ directories).
At first we thought this was just a display bug, but when the projects are
built, both libraries are linked in, which causes memory issues in the
running applications.
We have also tried building the solution from command line using devenv
/rebuild but got the same results (not really surprised there though).
Any suggestions would be appreciated.
.
- Follow-Ups:
- Re: Mixed libraries in linker command line
- From: "Gary Chang[MSFT]"
- Re: Mixed libraries in linker command line
- References:
- Mixed libraries in linker command line
- From: Chris Frey
- Mixed libraries in linker command line
- Prev by Date: How do I intergrate Intel C++ 9.0 compiler into VS2500 Pro?
- Next by Date: RE: Cannot make changes to dataset
- Previous by thread: Re: Mixed libraries in linker command line
- Next by thread: Re: Mixed libraries in linker command line
- Index(es):
Relevant Pages
|
Loading