id summary reporter owner description type status milestone component version severity resolution keywords cc 481 Linker Problems with VC .NET 2003 / STLPort / Boost pluggy13 René Rivera "{{{ Hi, I have been trying for over 2 days to install Boost in VC .NET 2003 alongside with STLPort , and despite several different settings, I am always getting the same linker errors. First I tried using STLPort 4.6.1 with boost 1.32. Here's a short, but complete description of what I have tried: First I downloaded and unzipped STLPort 4.61. Then I ran the vcvars batch and installed STLPort with nmake clean all -f vc71.mak nmake install -f vc71.mak Then I Installed boost 1.32 with bjam ""-sTOOLS=vc-7_1-stlport"" ""-sSTLPORT_PATH=C:\...\stlport"" ""-sSTLPORT_VERSIONS=4.6.1"" ""-sstlport-iostreams=on"" install This takes a while to complete, but seems to work fine except for a few errors with the datetime package, which I am not using anyway. I entered the boost / stlport header and lib directories into Visual studio and made sure they are on top of the other include directories. Then I created a dummy project with the following files: stdafx.h: --->>>> #ifdef NDEBUG # undef _STLP_DEBUG #else # define _STLP_DEBUG 1 #endif #define BOOST_LIB_DIAGNOSTIC #include #include <<<--- and the main.cpp: --->>>> #include ""stdafx.h"" #include #include using namespace _STL; int _tmain(int argc, _TCHAR* argv) { //forcing native mode in boost paths just to make sure that boost::filesystem has to be linked successfully boost::filesystem::path::default_name_check(boost::filesystem::native); vector test; test.push_back(1); vector::iterator Iter=test.begin(); Iter++; int testint=*Iter; // iterator overrun error just to see if the debug mode is working nicely return 0; } <<<--- When I try to compile it, it fails with the following liker errors: --->>>> Compiling... stlport-boost-test.cpp Linking to lib file: libboost_filesystem-vc71-mt-sgdp-1_32.lib Linking... stlport-boost-test.obj : error LNK2019: unresolved external symbol ""public: static void __cdecl boost::filesystem::path::default_name_check(bool (__cdecl*)(class _STL::basic_string,class _STL::allocator > const &))"" (?default_name_check@path@filesystem@boost@@SAXP6A_NABV?$basic_string@DV?$char_traits@D@_STL@@V?$allocator@D@2@@_STL@@@Z@Z) referenced in function _main stlport-boost-test.obj : error LNK2019: unresolved external symbol ""bool __cdecl boost::filesystem::native(class _STL::basic_string,class _STL::allocator > const &)"" (?native@filesystem@boost@@YA_NABV?$basic_string@DV?$char_traits@D@_STL@@V?$allocator@D@2@@_STL@@@Z) referenced in function _main Debug/stlport-boost-test.exe : fatal error LNK1120: 2 unresolved externals Build log was saved at ""file://e:\documents and settings\Wunibald Wunderlich\My Documents\Visual Studio Projects\Finity Engine VS 2003\stlport-boost-test\Debug\BuildLog.htm"" stlport-boost-test - 3 error(s), 0 warning(s) <<<--- It is obvious from the compiler output that libboost_filesystem-vc71-mt-sgdp-1_32.lib was linked, yet the compiler complains about unresolved symbols. When I comment out the line related to boost::filesystem from tmain(), it works perfectly. But I need boost::filesystem and quite a few other libraries for my real projects, so this is not an option. Also, I have no problem linking to boost when not using stlport, but I'd really like to take advantage of the neat debuging mode built into stlport. Someone from the STLPort forums suggested that I might try the latest CVS versions for boost and STLPort, so I did this yesterday (14th of Sept. 2005). I made sure that what I downloaded from CVS was indeed STLPort 5.0 / Boost 1.33, I recompiled everything and changed the headers path to the new version, but the problem stayed absolutely the same. I am really clueless on how to proceed. I have also tried posting to the boost and stlport forums, but nobody seemed to be able to help. Any help would be immmensely appreciated. Thanks! }}}" Support Requests closed Building Boost None Problem wontfix