Boost logo

Boost :

Subject: Re: [boost] [build] Boost modular: Build without version number suffixes
From: Vladimir Prus (vladimir_at_[hidden])
Date: 2015-01-27 05:26:03


On 01/27/2015 12:39 PM, Rob Stewart wrote:
>> it seems to me that the way boost builds SO files implies that the SO
>>> file is meant to be used for linking only and the library that is actually dynamically loaded at runtime is not the SO file but the
>>> ones ending in a version.
> The symlink is unversioned so you implicitly get the version it references without having to link against the versioned shared object.
> (Your build always mentions the unversioned name.) The Linux linker knows to resolve the symlink and links against the versioned shared
> object for you. That leads to the runtime reference to the versioned shared object. Two applications linked that way, at different times,
> can reference different versions of the shared object.

And I would imagine that the script that copies Boost libraries into the final location can be modified to also copy
so.NNN files.

>>> This inconsistency breaks for me as I've explained above.
> I understand that you want consistency between platforms. Just beware that fighting the norms of a platform will cause difficulties. That
> said, ISTR an option for Boost Build to build things as you want, but I don't know what it is. (I added "[build]" to the subject in hopes
> that will attract the right attention to your query.

I don't believe there is such an option. I will be open to a new value for --layout option, say 'bare', that suppresses version
number completely. Robert, since you've already identified the code in question, and it's not particularly specific to Boost.Build,
would you be interested in submitting a pull request?

Thanks,

-- 
Vladimir Prus
CodeSourcery / Mentor Embedded
http://vladimirprus.com

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