Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2007-10-25 02:09:03


David Abrahams wrote:

>
> If you look at
> http://beta.boost.org/development/tests/trunk/developer/output/Caleb%20Epstein%20SunOS-5-10-boost-bin-v2-libs-python-test-exec-test-gcc-4-1-2_sunos_i86pc-debug-debug-symbols-off-thrd-api-pthread_release.html
> you'll see the following command line:
>
>
> "/openpkg/bin/g++" -L"/openpkg/lib"
> -L"/openpkg/lib/python2.5/config" -Wl,-R -Wl,"/openpkg/lib" -Wl,-R
> -Wl,"/openpkg/lib/python2.5/config" -o
> "/home/cae/boost-regression/svn-trunk/results/boost/bin.v2/libs/python/test/exec.test/gcc-4.1.2_sunos_i86pc/debug/debug-symbols-off/thrd-api-pthread/exec"
> -Wl,--start-group
> "/home/cae/boost-regression/svn-trunk/results/boost/bin.v2/libs/python/test/exec.test/gcc-4.1.2_sunos_i86pc/debug/debug-symbols-off/thrd-api-pthread/exec.o"
> "/home/cae/boost-regression/svn-trunk/results/boost/bin.v2/libs/python/build/gcc-4.1.2_sunos_i86pc/debug/debug-symbols-off/link-static/thrd-api-pthread/libboost_python-gcc41-d-1_35.a"
> -Wl,-Bstatic -lrt -ldl -Wl,-Bdynamic -lpython2.5 -lrt -ldl
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> -Wl,--end-group -Wl,--strip-all
>
> On that platform there is no static librt, and the link fails.
>
> The only substantial difference between the way the exec target above
> is declared and a similar one that works, is that the exec target
> explicitly asks for the static version of the Boost.Python library.
> Here's the target that worked:
>
> "/openpkg/bin/g++" -L"/openpkg/lib"
> -L"/openpkg/lib/python2.5/config" -Wl,-R
> -Wl,"/home/cae/boost-regression/svn-trunk/results/boost/bin.v2/libs/python/build/gcc-4.1.2_sunos_i86pc/debug/debug-symbols-off/thrd-api-pthread"
> -Wl,-R -Wl,"/openpkg/lib" -Wl,-R -Wl,"/openpkg/lib/python2.5/config"
> -Wl,-rpath-link
> -Wl,"/home/cae/boost-regression/svn-trunk/results/boost/bin.v2/libs/python/build/gcc-4.1.2_sunos_i86pc/debug/debug-symbols-off/thrd-api-pthread"
> -o
> "/home/cae/boost-regression/svn-trunk/results/boost/bin.v2/libs/python/test/pointee.test/gcc-4.1.2_sunos_i86pc/debug/debug-symbols-off/thrd-api-pthread/pointee"
> -Wl,--start-group
> "/home/cae/boost-regression/svn-trunk/results/boost/bin.v2/libs/python/test/pointee.test/gcc-4.1.2_sunos_i86pc/debug/debug-symbols-off/thrd-api-pthread/pointee.o"
> "/home/cae/boost-regression/svn-trunk/results/boost/bin.v2/libs/python/build/gcc-4.1.2_sunos_i86pc/debug/debug-symbols-off/thrd-api-pthread/libboost_python-gcc41-d-1_35.so.1.35.0"
> -Wl,-Bstatic -Wl,-Bdynamic -lpython2.5 -lrt -ldl -Wl,--end-group
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> -Wl,--strip-all
>
> I can probably suppress the error by not explicitly requesting a
> static boost.python library for the exec target, but I think this
> indicates a serious bug in Boost.Build.

I suspect it's not a bug, but a behaviour by design -- '<link>static' is
propagated and applies to searched libraries as well. I only have to
check why requesting static boost.python makes rt static -- I would
have expected it's /python//python that matters for rt.

- Volodya


Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk