Hello, as i had some similar problems where to find built libraries, but on Unix/Linux/Cygwin, i used the attached Makefile-patch with version 1.30.2 to get all built libraries into a better-defined location, as some of the libs already get there: libs/<name>/build/bin-stage/libboost_<name>.* for the normal libs, libs/<name>/build/bin-stage/libboost_<name>_debug.* for the debug-libs. Then, i put some softlinks into my /usr/local/lib using just simple ln -s <boost>/libs/*/build/bin-stage/libboost_* /usr/local/lib/ and i got the headers known to the compiler with ln -s <boost>/boost /usr/local/include/ Actually i don't know why the location of some of the built libs were already put into its build/bin-stage, and others were not, nor which location would be the right one. However, as i've seen you're not really happy with jam, just to mention: have you ever seen confix.sourceforge.net ? Thanks, haubi Scott Meyers wrote:
On Tue, 09 Dec 2003 18:59:40 -0500, Beman Dawes wrote:
Here is a gcc command that works for me (after the libraries have been built):
Thanks for the help. The following works for me:
set BOOST_FILESYSTEM_LIB=D:\C++\Boost\Current\libs\filesystem\build\bin\libboost_filesystem.lib \gcc\debug\runtime-link-dynamic\libboost_filesystem.lib g++ -Id:\C++\Boost\Current -o simple_ls.exe simple_ls.cpp %BOOST_FILESYSTEM_LIB%
Unfortunately, I haven't been able to find a way to make it work for VC7.1. This is my most recent effort:
set BOOST_FILESYSTEM_LIB=D:\C++\Boost\Current\libs\filesystem\build\bin\libboost_filesystem.lib \vc7\debug\runtime-link-dynamic\libboost_filesystem.lib cl /TP /W4 /WL /GX /GR -ID:\C++\Boost\Current simple_ls.cpp /link /defaultlib:% BOOST_FILESYSTEM_LIB%
This elicits multiply-defined symbols errors:
simple_ls.cpp Microsoft (R) Incremental Linker Version 7.10.3077 Copyright (C) Microsoft Corporation. All rights reserved.
/out:simple_ls.exe /defaultlib:D:\C++\Boost\Current\libs\filesystem\build\bin\libboost_filesystem.lib\vc7\debug \runtime-link-dynamic\libboost_filesystem.lib simple_ls.obj msvcprtd.lib(MSVCP71D.dll) : error LNK2005: "public: char const & __thiscall std::basic_string
::operator[](unsigned int)const " (??A?$basic_string@DU?$char_traits@D@std@@V? $allocator@D@2@@std@@QBEABDI@Z) already defined in sim ple_ls.obj ... [Many more LNK2005 errors removed] ... LINK : warning LNK4098: defaultlib 'MSVCRTD' conflicts with use of other libs; use /NODEFAULTLIB:library simple_ls.exe : fatal error LNK1169: one or more multiply defined symbols found I expect that I can figure out the LNK4098 warning myself, but I'm not sure what to do about the LNK2005s. For that matter, I'm not sure if I've formed the command line correctly for what I want to do. My attempts to decipher the documentation for the command line compiler and linker and interactions thereof have been in vain. Does anybody happen to know what the right invocation is? If not, that's fine, I can post elsewhere, as this is really an MSVC question, not a Boost question.
Thanks,
Scott
_______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users
-- Michael Haubenwallner SALOMON Automation GmbH Forschung & Entwicklung A-8114 Friesach bei Graz T +43 3127 200 308 F +43 3127 200 22 mailto:michael.haubenwallner@salomon.at http://www.salomon.at diff -ru boost-1.30.2/libs/date_time/build/Jamfile boost-1.30.2-sa1/libs/date_time/build/Jamfile --- boost-1.30.2/libs/date_time/build/Jamfile Sun Jan 19 23:31:56 2003 +++ boost-1.30.2-sa1/libs/date_time/build/Jamfile Wed Sep 24 13:05:46 2003 @@ -36,3 +36,12 @@ : debug release ; +stage bin-stage : <lib>boost_date_time <dll>boost_date_time + : + <tag><debug>"_debug" + : + debug release + ; + + + diff -ru boost-1.30.2/libs/filesystem/build/Jamfile boost-1.30.2-sa1/libs/filesystem/build/Jamfile --- boost-1.30.2/libs/filesystem/build/Jamfile Mon Mar 17 16:30:30 2003 +++ boost-1.30.2-sa1/libs/filesystem/build/Jamfile Wed Sep 24 13:05:41 2003 @@ -7,4 +7,14 @@ lib boost_filesystem : ../src/$(SOURCES).cpp : <include>$(BOOST_ROOT) <sysinclude>$(BOOST_ROOT) : debug release - ; \ No newline at end of file + ; + +stage bin-stage : <lib>boost_filesystem + : + <tag><debug>"_debug" + : + debug release + ; + + + diff -ru boost-1.30.2/libs/graph/build/Jamfile boost-1.30.2-sa1/libs/graph/build/Jamfile --- boost-1.30.2/libs/graph/build/Jamfile Tue May 21 18:22:36 2002 +++ boost-1.30.2-sa1/libs/graph/build/Jamfile Wed Sep 24 13:06:15 2003 @@ -8,3 +8,13 @@ : <sysinclude>$(BOOST_ROOT) : debug <inlining>on #inlining prevents linker name clashes due to truncation! ; + +stage bin-stage : <lib>libbgl-viz + : + <tag><debug>"_debug" + : + debug release + ; + + + diff -ru boost-1.30.2/libs/signals/build/Jamfile boost-1.30.2-sa1/libs/signals/build/Jamfile --- boost-1.30.2/libs/signals/build/Jamfile Fri Feb 14 18:31:04 2003 +++ boost-1.30.2-sa1/libs/signals/build/Jamfile Wed Sep 24 13:04:39 2003 @@ -22,3 +22,13 @@ : <sysinclude>$(BOOST_ROOT) <define>BOOST_SIGNALS_STATIC_LINK : debug release ; + +stage bin-stage : <lib>boost_signals <dll>boost_signals + : + <tag><debug>"_debug" + : + debug release + ; + + + diff -ru boost-1.30.2/libs/thread/build/Jamfile boost-1.30.2-sa1/libs/thread/build/Jamfile --- boost-1.30.2/libs/thread/build/Jamfile Fri Jan 24 00:23:07 2003 +++ boost-1.30.2-sa1/libs/thread/build/Jamfile Wed Sep 24 13:07:12 2003 @@ -47,7 +47,7 @@ stage bin-stage : <dll>boost_thread : #<tag><runtime-link-static>"s" - <tag><debug>"d" + <tag><debug>"_debug" : debug release ; }