
Scott McMurray wrote:
On Sun, Nov 9, 2008 at 11:46, Phil Endecott <spam_from_boost_dev@chezphil.org> wrote:
I've written some open-source stuff that uses Boost and the inconsistency of library naming between distributions and between different versions has been a real pain for me, and for my users.
My main feeling is that I don't care what the libraries are called, as long as the naming is consistent.
This seems like the important point, to me. What if there were a way to specify what you want, and for some program to find whatever matches best?
At present, I'm shipping a Makefile that looks for libboost_thread-mt. This seems to keep most but not all people happy. I have the impression that the majority of distributions are shipping libraries with -mt suffixes but without the -gcc stuff, while a few are also stripping the -mt. I encourage you to converge towards the current majority position.
Suppose there were a boost_link program so that instead, you said something like:
`boost_link =static =mt +gcc -stlport thread`
And it gave you back the the static, mt version of the lib, preferring gcc and without stlport? (The script would find the shortest filename that satisfies all the conditions.)
Ideally, that program should be pkg-config. However, it does not support anything like that. And, while a custom solution will solve the 'what is the name of the library?' issue, it won't solve the 'do I have this library?' issue. If you're writing an application using Boost that should work on all Linux flavours, it won't make life much simpler if your application can ask for specific flavour, and be told that it is not installed. It is much better to expect that shared MT build of boost is available, and act with that in mind. - Volodya