Boost logo

Boost-Build :

Subject: Re: [Boost-build] naive usage of bootstrap.sh
From: Vladimir Prus (vladimir.prus_at_[hidden])
Date: 2016-10-23 18:15:23


Robert,

I think it behaves as documented. The prefix option specified where to
install, not where to build, so the build happens in the root folder. You
can pass --build-dir to b2 to change that.

Also, you seem to be building all of Boost, so yes, it tries to build
Python.

On Sun, Oct 23, 2016, 22:56 Robert Ramey <ramey_at_[hidden]> wrote:

>
> I can test the serialization library in the mac terminal and things work
> great. I can test using whichever one of several compilers, I can build
> my library status table, etc. and everything is OK.
>
> But for the last 18 months, I have errors in the official boost test
> matrix on the develop branch on the linux platforms. This was pretty
> frustrating as I always considered the underlying OS of the mac and
> linux very similar. After experimenting trying to isolate the issue I\
> concluded that I have no choice but to install a similar platform in my
> office. So I installed parallels on my mac with ubuntu 14.04. This went
> pretty smoothly. It's very convenient that from within the ubuntu os I
> can access my original mac OS file system with my master copy of Boost
> source on it. So I should have the capability of running b2 test
> procedure on exactly the same file versions.
>
> So all I have to is to build B2 and a couple of other utilities on the
> ubuntu file system - straight forward? - not so much. First of all I
> don't want to polute my file tree on the Mac with files which contain
> ubuntu executables and libraries. Of course I forget how to do this so
> I look at the documentation on bootstrap.sh
>
> http://www.boost.org/doc/libs/1_62_0/more/getting_started/unix-variants.html
> .
> It states in part:
>
> $ cd path/to/boost_1_62_0
> $ ./bootstrap.sh --help
>
> which rewards me with:
>
> parallels_at_ubuntu:~/Desktop/Parallels Shared
> Folders/Home/WorkingProjects/modular-boost$ ./bootstrap.sh -help
> `./bootstrap.sh' prepares Boost for building on a few kinds of systems.
>
> Usage: ./bootstrap.sh [OPTION]...
>
> Defaults for the options are specified in brackets.
>
> Configuration:
> -h, --help display this help and exit
> --with-bjam=BJAM use existing Boost.Jam executable (bjam)
> [automatically built]
> --with-toolset=TOOLSET use specific Boost.Build toolset
> [automatically detected]
> --show-libraries show the set of libraries that require build
> and installation steps (i.e., those libraries
> that can be used with --with-libraries or
> --without-libraries), then exit
> --with-libraries=list build only a particular set of libraries,
> describing using either a comma-separated
> list of
> library names or "all"
> [all]
> --without-libraries=list build all libraries except the ones listed []
> --with-icu enable Unicode/ICU support in Regex
> [automatically detected]
> --without-icu disable Unicode/ICU support in Regex
> --with-icu=DIR specify the root of the ICU library
> installation
> and enable Unicode/ICU support in Regex
> [automatically detected]
> --with-python=PYTHON specify the Python executable [python]
> --with-python-root=DIR specify the root of the Python installation
> [automatically detected]
> --with-python-version=X.Y specify the Python version as X.Y
> [automatically detected]
>
> Installation directories:
> --prefix=PREFIX install Boost into the given PREFIX
> [/usr/local]
> --exec-prefix=EPREFIX install Boost binaries into the given EPREFIX
> [PREFIX]
>
> More precise control over installation directories:
> --libdir=DIR install libraries here [EPREFIX/lib]
> --includedir=DIR install headers here [PREFIX/include]
>
> parallels_at_ubuntu:~/Desktop/Parallels Shared
> Folders/Home/WorkingProjects/modular-boost$
>
> Which looks quite wrong to me. I expect bootstrap.sh to build some
> boost tools not include things like --show-libraries , without-icu etc.
> I'm now totally confused as to what bootstrap.sh is supposed to do.
>
> Of course I'm not going to let a minor think like total confusion
> prevent me from taking action ( this is america after all). So
> following the documentation I let loose with:
>
> parallels_at_ubuntu:~/Desktop/Parallels Shared
> Folders/Home/WorkingProjects/modular-boost$ pwd
> /home/parallels/Desktop/Parallels Shared
> Folders/Home/WorkingProjects/modular-boost
> parallels_at_ubuntu:~/Desktop/Parallels Shared
> Folders/Home/WorkingProjects/modular-boost$ ./bootstrap.sh
> --prefix=/home/parallels/boost
> Building Boost.Build engine with toolset gcc...
> tools/build/src/engine/bin.linuxx86_64/b2
> Detecting Python version... 2.7
> Detecting Python root... /usr
> Unicode/ICU support for Boost.Regex?... not found.
> Backing up existing Boost.Build configuration in project-config.jam.3
> Generating Boost.Build configuration in project-config.jam...
>
> Bootstrapping is done. To build, run:
>
> ./b2
>
> To adjust configuration, edit 'project-config.jam'.
> Further information:
>
> - Command line help:
> ./b2 --help
>
> - Getting started guide:
> http://www.boost.org/more/getting_started/unix-variants.html
>
> - Boost.Build documentation:
> http://www.boost.org/build/doc/html/index.html
>
> parallels_at_ubuntu:~/Desktop/Parallels Shared
> Folders/Home/WorkingProjects/modular-boost$ ls -l b2
> -rwxrwxr-x 1 parallels parallels 271448 Oct 23 12:50 b2
> parallels_at_ubuntu:~/Desktop/Parallels Shared
> Folders/Home/WorkingProjects/modular-boost$
>
> Which displays a number of messages whch seem totally out of place -
> python? who ordered that?, etc. Worst of all, it seems to ignore the
> "prefix" switch and builds b2 right in the boost root. Not where I
> meant to put it and not where the documentation nor the help information
> says it will go.
>
> So now I'm going to have to dive into a place where I didn't want to go
> - reviewing the bootstrap.sh script in detail. It shouldn't be this
> way. At a very miniumum, the Getting Started documentation,
> booststrap.sh help and execution are out of sync. I user less
> persistent user shouldn't have to deal with this.
>
> Robert Ramey
>
>
> _______________________________________________
> Unsubscribe & other changes:
> http://lists.boost.org/mailman/listinfo.cgi/boost-build
>
> --
Vladimir Prus
http://vladimirprus.com



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