Boost logo

Boost :

From: David Abrahams (david.abrahams_at_[hidden])
Date: 2002-02-27 19:20:42


----- Original Message -----
From: "Craig Rodrigues" <rodrigc_at_[hidden]>
To: <boost_at_[hidden]>
Sent: Wednesday, February 27, 2002 6:53 PM
Subject: Re: [boost] Python paths in linux_gcc.mak?

> On Wed, Feb 27, 2002 at 04:37:31PM -0500, David Abrahams wrote:
> > I'm not maintaining those makefiles; I'm not sure that anyone is. The
> > official way to build/test Boost is by using Boost.Build.
>
> How do I use Boost.Build?
>
> I followed the instructions at:
> http://www.boost.org/tools/build/index.html
>
> I did more or less the following in a Bourne shell script:
>
>
============================================================================
==
> #!/bin/sh
> ROOT=$PWD
> export ROOT
>
> cvs -z 3 -d:pserver:anonymous_at_[hidden]:/cvsroot/boost co
boost#cd boost/tools/build/jam_src
> printf "=== Building Jam\n\n"
> gmake
>
> cd $ROOT/boost
>
> printf "=== Building Boost library\n\n"
>
$ROOT/boost/tools/build/jam_src/jam0 -sBOOST_ROOT=$ROOT/boost -sTOOLS="gcc"
2>&1 | tee /tmp/boost.txt

You shouldn't run jam0; that's an intermediate target used for
bootstrapping. The real one lives in a directory called bin.<platform>
underneath the jam_src directory. OTOH, we also have precompiled Jam
binaries on the page you mention above so you probably don't need to build
jam at all.

> printf "=== Building regression test\n\n"
> cd $ROOT/boost/status
>
$ROOT/boost/tools/build/jam_src/jam0 -sBOOST_ROOT=$ROOT/boost -sTOOLS="gcc"
2>&1 | tee /tmp/boost_regress.txt
>
============================================================================
==
>
> For some reason, during the build of the Python stuff in Boost,
>
>

g++ -c -Wall -ftemplate-depth-100 -DBOOST_PYTHON_STATIC_LIB=1 -DBOOST_PYTH
ON_DYNAMIC_LIB -g -O0 -fno-inline -fPIC -I"libs/python/build" -I"/usr/loc
al/include/python1.5" -I"." -o
"libs/python/build/bin/libboost_python_static.a/gcc/debug/runtime-link-dynam
ic/shared-linkable-true/types.o" "libs/python/build/../src/types.cpp"
>
>
> The make scheme though my Python includes where in
/usr/local/include/python1.5,
> instead of in /usr/include/python1.5.
>
> Please tell me what the correct way to fix this is.

You might need to customize the PYTHON_ROOT and PYTHON_VERSION variables for
your system. It looks like you have Python 1.5, so maybe just the former. It
looks to me like you want PYTHON_ROOT=/usr (the default is /usr/include).

Also, Boost.Python isn't tested (it's only built) as part of anything that
happens above. You'd need to build the "test" target in libs/python/build to
do that. If GCC 3.1 is conforming enough, it will fail to build Boost.Python
v1. If you build the "test" target in libs/python it will build and test the
prerelease Boost.Python V2, which fixes those problems (but you need to get
boost/mpl on the mpl-development branch).

-Dave


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