Boost logo

Boost :

From: Jeff Gray (jeffg_at_[hidden])
Date: 2003-08-11 21:50:22

I am trying to compile Boost against the uClibc libraries. This requires
that I define a custom value for LD_LIBRARY_PATH, so that my uClibc
libraries are used instead of the standard system libraries.

The problem I have is that building Boost.Python generates its own
LD_LIBRARY_PATH definition that points to my Python library directory
only. This results in the following unpleasant result:

ldd => /lib/i686/ (0x40022000)
       /lib/ => /lib/ (0x40000000)
       /lib/ => /lib/ (0x40000000) => /usr/lib/ (0x00000000) => /usr/uclibc/lib/ (0x00000000) => /usr/uclibc/lib/ (0x00000000) => /usr/uclibc/lib/ (0x00000000) => /lib/ (0x00000000) => /lib/ (0x00000000) => /lib/ (0x00000000)
       /lib/ => /lib/ (0x00000000)

Note that BOTH glibc and uClibc libraries have been linked against.

If I manually copy the very long line that builds the
file and run it under my environment, it links correctly, but I cannot
force jam to do what I want.

My question is : How do I stop this internal value for LD_LIBRARY_PATH
being set? I've tried every environment variable I can think of.

My system is a Mandrake 9.1 base. I'm running Python 2.2.3 compiled
against uClibc & I'm using the uClibc toolset based on gcc 3.2.3.
Everything else compiles and links well. I have an embedded system
running this version of Python & it's very happy. Boost is my one
remaining problem.

Here is my setup file:

export PYTHON_ROOT=/usr/uclibc/usr
export GCC_ROOT_DIRECTORY=/usr/uclibc/
export GCC_BIN_DIRECTORY=/usr/uclibc/i586-linux/bin/
export GCC_STDLIB_DIRECTORY=/usr/uclibc/lib
export CPATH=


export LD_LIBRARY_PATH=/usr/uclibc/lib:/usr/uclibc/usr/lib/python2.2/config
bjam -d2 -q

Boost list run by bdawes at, gregod at, cpdaniel at, john at