Hi all!
I have a very basic problem with the boost libraries:
I used bjam to build all boost libraries for Linux (using "gcc" as
toolset and the call 'bjam "-sTOOLS=gcc" install').
All went fine, however I wanted to do the regression tests for boost_regex
using the gcc.mak Makefile
in
Uli Tuerk wrote:
Hi all!
I have a very basic problem with the boost libraries:
I used bjam to build all boost libraries for Linux (using "gcc" as toolset and the call 'bjam "-sTOOLS=gcc" install').
All went fine, however I wanted to do the regression tests for boost_regex using the gcc.mak Makefile in
/libs/regex/test/regress which uses "-lboost_regex" for linking. The linker reported an error because there is no "libboost_regex.so" in my lib folder unless I created a link with this name to one of the various versions of libboost_regex. A comment for these Makefiles would be helpful for the case when having build all with bjam. When compiling the regex part alone, the library is created in build/gcc with the correct name (libboost_regex.so).
I sounds like the makefile should be updated to handle the different built variants.
I'm new to C++, so maybe I haven't got the point with the sophisticated naming scheme of the libraries, but: for the library "libboost_regex-gcc-mt-d-1_31.so" e.g. are the tool specifier ("gcc") and the version ("1_31") really necessary for a platform using version numbering of the libraries anyway in the ".so" extension?
1. Not all operating systems support internal library versioning. And when they do, you still need a version number on the filename to allow multiple versions of the same library to coexist. 2. Some developers, most Boost developers, have many compilers installed so the toolset tag is needed so we can work with them all without collisions..
OK, there are still the categories with/without debug and with/without threading. How would you guys select the type of library? In the Makefile?
It depends on what the makefile wants. Looking at that makefile I see that it uses both debug and release variants, so you need both of those. And looking at the libs/regex/build/gcc.mak would suggest that only the single-threaded variants are use. -- -- Grafik - Don't Assume Anything -- Redshift Software, Inc. - http://redshift-software.com -- rrivera/acm.org - grafik/redshift-software.com - 102708583/icq
participants (2)
-
Rene Rivera
-
Uli Tuerk