When building BLFS-7.6 (systemd), I noticed that the configure script for
Valgrind was not finding Boost even though I had installed it.

Turns out that in more recent versions of Boost, the multithreaded
libraries no longer have, by default anyway, the "-mt" in their filenames
(e.g. libboost_thread-mt.so).  Valgrind, for one, looks for these libraries
with the assumption that the "-mt" is present (it uses
"-llibboost_system-mt" in its configure).

Given that it is probable that some programs will look for "-mt" style
libraries, and others will look for libraries without the "-mt,"  symlinks
seem to be the most appropriate way to address this.  I have tried it out
and it fixes the issue I was having with Valgrind.

This is the command I used to generate the symlinks once the libraries were
installed in /usr/lib.  If there is a more compact way to do this, I would
love to know it.  But this works.

pushd /usr/lib &&
for file in $(ls -1 libboost*);
do
   prefix=`echo $file | cut -d'.' -f 1`
   suffix=`echo $file | cut -d'.' -f 1 --complement`
   link_name=$prefix"-mt."$suffix
   ln -s $file $link_name
done &&
popd



Best,

-wpl
-- 
http://lists.linuxfromscratch.org/listinfo/blfs-support
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to