Boost logo

Boost :

Subject: Re: [boost] Boost modular: Build without version number suffixes
From: Robert Dailey (rcdailey.lists_at_[hidden])
Date: 2015-01-26 00:09:24


On Sun, Jan 25, 2015 at 10:48 PM, Robert Dailey
<rcdailey.lists_at_[hidden]> wrote:
> When I build modular boost on Linux Mint 17, I get SO files named like so:
>
> libboost_date_time.so.1.57.0
>
> with a corresponding symlink without the version number:
>
> libboost_date_time.so
>
> I'd like it to build without the version number because when I rename
> the base file to remove the version, code links fine but during
> runtime it tries to load the SO with the version number at the end. I
> don't know how to fix that, so I assume the fix is to build boost
> without the version numbers.
>
> Any help is appreciated.

I figured out what I had to do. I made the following change to
boostcpp.jam (around line 158):

        # Optionally add version suffix. On NT, library with version suffix will
        # not be recognized by linkers. On CYGWIN, we get strage duplicate
        # symbol errors when library is generated with version suffix. On OSX,
        # version suffix is not needed -- the linker expects the
        # libFoo.1.2.3.dylib format. AIX linkers do not accept version suffixes
        # either. Pgi compilers can not accept a library with version suffix.
        if $(type) = SHARED_LIB &&
          ! [ $(property-set).get <target-os> ] in windows cygwin darwin aix &&
          ! [ $(property-set).get <toolset> ] in pgi
        {
            result = $(result) ; #.$(BOOST_VERSION) ;
        }

The BOOST_VERSION was being added to the end with no apparent option
to turn it off. Would love to see an option to turn this off.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk