|
Boost-Build : |
Subject: [Boost-build] LIB without PDB: LNK4099 on MSVC
From: VoidEx (VoidEx_at_[hidden])
Date: 2008-10-11 14:20:52
Hello,
I am using xerces-c library:
lib xercesc : : <file>$(XERCESC_ROOT)/lib/xerces-c_3D.lib <link>shared
<variant>debug ;
lib xercesc : : <file>$(XERCESC_ROOT)/lib/xerces-c_3.lib <link>shared
<variant>release ;
lib xercesc : : <file>$(XERCESC_ROOT)/lib/xerces-c_static_3D.lib
<link>static <variant>debug : : <define>XERCES_STATIC_LIBRARY
<linkflags>"/NODEFAULTLIB:libcmtd.lib" ;
lib xercesc : : <file>$(XERCESC_ROOT)/lib/xerces-c_static_3.lib <link>static
<variant>release : : <define>XERCES_STATIC_LIBRARY
<linkflags>"/NODEFAULTLIB:libcmt.lib" ;
Then I link with it
unit-test serialization-test : serialization-test.cpp ../system
../ext//xercesc ../preferences ;
And i got many LNK4099 warnings in static debug version, because i don't
have PDB.
MSDN says, that i must remove /DEBUG linker option and generate PDB with
/PDB option.
I tried to place "<debug-symbols>off" (and "<runtime-debugging>off" too) in
usage-requirements of lib xerces, in serialization-test, but i always got
this warnings.
I tried to make target:
lib xercesc_deb : : <file>$(XERCESC_ROOT)/lib/xerces-c_static_3D.lib
<link>static /*various options: debug-symbols off, variant debug etc*/ : :
<define>XERCES_STATIC_LIBRARY <linkflags>"/NODEFAULTLIB:libcmtd.lib" ;
and use it, but i have no result
It will be perfect to modify lib xerces only, but ok if i must rewrite all
targets, that uses it.
Is it possible?
- voidex
Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk