Boost logo

Boost-Build :

Subject: [Boost-build] mingw... again
From: Kirk Joppy (kirk.joppy_at_[hidden])
Date: 2013-07-07 14:13:36


Dear boost-build list,

I am trying to set up boost 1.53 under MinGW. Both StackOverflow and
this list have a long history of questions related to this subject,
and despite the multitude of answers the documentation does not every
seem to have been updated. I'm posting for two reasons. I would like
to get help, and I would like to encourage someone with authority to
update the documentation. Specific questions are at end of post.

I'm open to solutions using msys or cmd.exe. I don't really care as
long as it works properly. Here follows a list of possible ways to do
this that I have found on the internet

1. (msys) From boost.build mailing list:
(http://boost.2283326.n4.nabble.com/how-to-build-boost-using-mingw-on-windows-td3614538.html)

$ cd BOOST_ROOT/tools/build/v2/engine/src
$ ./build.sh mingw
$ cd BOOST_ROOT
$ tools/build/v2/engine/src/bin.ntx86/bjam.exe toolset=gcc

2. (msys) from StackOverflow:
(http://stackoverflow.com/questions/5012429/building-boost-under-msys-cant-find-mingw-jam)

$ ./bootstrap.sh --with-toolset=mingw
Edit the file project-config.jam and replace 'mingw' by 'gcc'
$ bjam.exe

(This is the method I've been working with)

3. (cmd.exe) from StackOverflow:
(http://stackoverflow.com/questions/13256788/building-boost-1-52-with-mingw)

C:\boost_1_52_0> bootstrap.bat mingw
C:\boost_1_52_0> b2 toolset=gcc

QUESTIONS

A. What is the difference between methods 1 and 2? There seems to be
two classes of installation method. The first does things from
BOOST_ROOT while the other does things from BOOST_ROOT\tools\build\v2.
What's the difference? What should people be doing?

B. In looking around through various files I found the following block
in BOOST_ROOT\tools\build\v2\engine\build.bat

if EXIST "C:\MinGW\bin\gcc.exe" (
    set "BOOST_JAM_TOOLSET=mingw"
    set "BOOST_JAM_TOOLSET_ROOT=C:\MinGW\"
    goto :eof)

Ack! This assumes MinGW was installed on the user's C drive? What's
the point of that? Many users put their non-os software on other drive
partitions. Shouldn't we instead use the system PATH to find gcc.exe
since that environment variable will be set nomatter where the user
puts MinGW?

C. For an "installation" of boost, is there supposed to be anything
other than the headers and libs? I ask this because I'm trying to
build a project that uses autotools and I know that some packages
install various files to interface with autotools. Does boost do this
or should I only expect the actual resources to show up?

Thank you very much for your time.

Regards,
kjoppy


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