|
Boost : |
From: Rene Rivera (grafikrobot_at_[hidden])
Date: 2007-07-23 11:16:31
Roger Leigh wrote:
> Vladimir Prus <ghost_at_[hidden]> writes:
>
>> Roger Leigh wrote:
>>
>>> This project, like many, utilises GNU Autoconf and Automake for its
>>> build system. I need to determine how to link with the Boost
>>> libraries in order to build the programs in the project. This is an
>>> issue for many projects which want to link with a Boost library.
>>>
>>>
>>> To illustrate my problem:
>>>
>>> ls -l /usr/lib/libboost_regex-*.so /usr/lib/libboost_program_options-*.so
>>> lrwxrwxrwx 1 root root 45 2007-07-08 11:48
>>> /usr/lib/libboost_program_options-gcc41-1_34.so ->
>>> libboost_program_options-gcc41-1_34.so.1.34.0 lrwxrwxrwx 1 root root 48
>>> 2007-07-08 11:48 /usr/lib/libboost_program_options-gcc41-mt-1_34.so ->
>>> libboost_program_options-gcc41-mt-1_34.so.1.34.0 lrwxrwxrwx 1 root root 41
>> This indicates a bug with Debian packages. All Linux packagers are supposed
>> to building Boost with the --layout=system option.
I don't remember saying that Linux packagers should use the
--layout=system option. For that matter, I prefer if everyone uses the
versioned layout as it produces non-colliding names.
>> Passing such option will
>> produce names like
>>
>> libboost_program_options-mt.so
>
> Is this documented anywhere? I couldn't find any mention of it.
Do you mean is --layout documented?
====
--layout=<layout> Determines whether to choose library names
and header locations such that multiple
versions of Boost or multiple compilers can
be used on the same system.
versioned (default) - Names of boost
binaries include the Boost version
number and the name and version of the
compiler. Boost headers are installed
in a subdirectory of <HDRDIR> whose
name contains the Boost version
number.
system - Binaries names do not include
the Boost version number or the name
and version number of the compiler.
Boost headers are installed directly
into <HDRDIR>. This option is
intended for system integrators who
are building distribution packages.
====
And no, --layout=system will not remove the -mt tag. Also for
--layout=versioned, unversioned links are created which remove the Boost
version number tag, but not the compiler tag.
-- -- Grafik - Don't Assume Anything -- Redshift Software, Inc. - http://redshift-software.com -- rrivera/acm.org - grafik/redshift-software.com -- 102708583/icq - grafikrobot/aim - grafikrobot/yahoo
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk