Dear all,

I have tried to build modular-boost on windows (win7 64bit) using the mingw toolset.

The steps that I followed (after some trial & error) are:

1. clone boost-modular from into
    %home%\usr\local\boost

2. in that boost directory; type
    bootstrap mingw

===========output===============
Building Boost.Build engine

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://boost.org/more/getting_started/windows.html

    - Boost.Build documentation:
    http://www.boost.org/boost-build2/doc/html/index.html
================================

3. after apparently successful bootstrap, type
    b2 -a -d+2 -q --prefix=c:\users\amwink\usr\local --build-type=complete --build-dir=build toolset=gcc link=shared runtime-link=shared

The output is below. So the commands cl.exe and ml.exe, which are not in mingw but can be used from the masm32 package are found, but their output is not recognised (as I understand)

Is that correct? Would there be a way around this other than installing VC++?

Many thanks
Alle Meije

===========output===============
Building the Boost C++ Libraries.

Performing configuration checks

    - symlinks supported       : yes (cached)
    - 32-bit                   : yes (cached)
    - arm                      : no  (cached)
    - mips1                    : no  (cached)
    - power                    : no  (cached)
    - sparc                    : no  (cached)
    - x86                      : yes (cached)
    - has_icu builds           : no  (cached)
warning: Graph library does not contain MPI-based parallel components.
note: to enable them, add "using mpi ;" to your user-config.jam
    - zlib                     : no  (cached)
    - iconv (libc)             : no  (cached)
    - iconv (separate)         : yes (cached)
    - icu                      : no  (cached)
    - icu (lib64)              : no  (cached)
    - g++ -shared-* supported  : no  (cached)
    - message-compiler         : no  (cached)
    - compiler-supports-ssse3  : yes (cached)
    - compiler-supports-avx2   : yes (cached)
    - gcc visibility           : yes (cached)
    - long double support      : yes (cached)
warning: skipping optional Message Passing Interface (MPI) library.
note: to enable MPI support, add "using mpi ;" to user-config.jam.
note: to suppress this message, pass "--without-mpi" to bjam.
note: otherwise, you can safely ignore this message.
warning: No python installation configured and autoconfiguration
note: failed.  See http://www.boost.org/libs/python/doc/building.html
note: for configuration instructions or pass --without-python to
note: suppress this message and silently skip all Boost.Python targets
    - zlib                     : no  (cached)
    - zlib                     : no  (cached)
warning: Skipping Boost.Locale library with threading=single.
warning: Skipping Boost.Thread library with threading=single.
warning: Skipping Boost.Wave library with threading=single.
    - zlib                     : no  (cached)

Component configuration:

    - atomic                   : building
    - chrono                   : building
    - container                : building
    - context                  : building
    - coroutine                : building
    - date_time                : building
    - exception                : building
    - filesystem               : building
    - graph                    : building
    - graph_parallel           : building
    - iostreams                : building
    - locale                   : building
    - log                      : building
    - math                     : building
    - mpi                      : building
    - program_options          : building
    - python                   : building
    - random                   : building
    - regex                    : building
    - serialization            : building
    - signals                  : building
    - sync                     : building
    - system                   : building
    - test                     : building
    - thread                   : building
    - timer                    : building
    - wave                     : building

gcc.compile.c++ build\boost\bin.v2\libs\atomic\build\gcc-mingw-4.8.1\release\threading-multi\lockpool.o

    "g++"  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -mthreads  -DBOOST_ALL_NO_LIB=1 -DBOOST_ATOMIC_DYN_LINK=1 -DBOOST_ATOMIC_SOURCE -DBOOST_USE_WINDOWS_H -DNDEBUG -D_WIN32_WINNT=0x0500  -I"." -c -o "build\boost\bin.v2\libs\atomic\build\gcc-mingw-4.8.1\release\threading-multi\lockpool.o" "libs\atomic\src\lockpool.cpp"

gcc.link.dll build\boost\bin.v2\libs\atomic\build\gcc-mingw-4.8.1\release\threading-multi\libboost_atomic-mgw48-mt-1_56.dll.a

    "g++"   "-Wl,--out-implib,build\boost\bin.v2\libs\atomic\build\gcc-mingw-4.8.1\release\threading-multi\libboost_atomic-mgw48-mt-1_56.dll.a" -o "build\boost\bin.v2\libs\atomic\build\gcc-mingw-4.8.1\release\threading-multi\libboost_atomic-mgw48-mt-1_56.dll"  -shared -Wl,--start-group "build\boost\bin.v2\libs\atomic\build\gcc-mingw-4.8.1\release\threading-multi\lockpool.o"  -Wl,-Bstatic  -Wl,-Bdynamic  -Wl,--end-group -mthreads -lkernel32

common.copy stage\lib\libboost_atomic-mgw48-mt-1_56.dll.a

    copy /b "build\boost\bin.v2\libs\atomic\build\gcc-mingw-4.8.1\release\threading-multi\libboost_atomic-mgw48-mt-1_56.dll.a" + this-file-does-not-exist-A698EE7806899E69 "stage\lib\libboost_atomic-mgw48-mt-1_56.dll.a"

build\boost\bin.v2\libs\atomic\build\gcc-mingw-4.8.1\release\threading-multi\libboost_atomic-mgw48-mt-1_56.dll.a
        1 file(s) copied.
common.copy stage\lib\libboost_atomic-mgw48-mt-1_56.dll

    copy /b "build\boost\bin.v2\libs\atomic\build\gcc-mingw-4.8.1\release\threading-multi\libboost_atomic-mgw48-mt-1_56.dll" + this-file-does-not-exist-A698EE7806899E69 "stage\lib\libboost_atomic-mgw48-mt-1_56.dll"

build\boost\bin.v2\libs\atomic\build\gcc-mingw-4.8.1\release\threading-multi\libboost_atomic-mgw48-mt-1_56.dll
        1 file(s) copied.
gcc.compile.c++ build\boost\bin.v2\libs\system\build\gcc-mingw-4.8.1\release\threading-multi\error_code.o

    "g++"  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pedantic -mthreads  -DBOOST_ALL_NO_LIB=1 -DBOOST_SYSTEM_DYN_LINK=1 -DNDEBUG  -I"." -c -o "build\boost\bin.v2\libs\system\build\gcc-mingw-4.8.1\release\threading-multi\error_code.o" "libs\system\src\error_code.cpp"

gcc.link.dll build\boost\bin.v2\libs\system\build\gcc-mingw-4.8.1\release\threading-multi\libboost_system-mgw48-mt-1_56.dll.a

    "g++"   "-Wl,--out-implib,build\boost\bin.v2\libs\system\build\gcc-mingw-4.8.1\release\threading-multi\libboost_system-mgw48-mt-1_56.dll.a" -o "build\boost\bin.v2\libs\system\build\gcc-mingw-4.8.1\release\threading-multi\libboost_system-mgw48-mt-1_56.dll"  -shared -Wl,--start-group "build\boost\bin.v2\libs\system\build\gcc-mingw-4.8.1\release\threading-multi\error_code.o"  -Wl,-Bstatic  -Wl,-Bdynamic  -Wl,--end-group -mthreads

common.copy stage\lib\libboost_system-mgw48-mt-1_56.dll.a

    copy /b "build\boost\bin.v2\libs\system\build\gcc-mingw-4.8.1\release\threading-multi\libboost_system-mgw48-mt-1_56.dll.a" + this-file-does-not-exist-A698EE7806899E69 "stage\lib\libboost_system-mgw48-mt-1_56.dll.a"

build\boost\bin.v2\libs\system\build\gcc-mingw-4.8.1\release\threading-multi\libboost_system-mgw48-mt-1_56.dll.a
        1 file(s) copied.
common.copy stage\lib\libboost_system-mgw48-mt-1_56.dll

    copy /b "build\boost\bin.v2\libs\system\build\gcc-mingw-4.8.1\release\threading-multi\libboost_system-mgw48-mt-1_56.dll" + this-file-does-not-exist-A698EE7806899E69 "stage\lib\libboost_system-mgw48-mt-1_56.dll"

build\boost\bin.v2\libs\system\build\gcc-mingw-4.8.1\release\threading-multi\libboost_system-mgw48-mt-1_56.dll
        1 file(s) copied.
gcc.compile.c++ build\boost\bin.v2\libs\chrono\build\gcc-mingw-4.8.1\release\threading-multi\chrono.o

    "g++"  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pedantic -mthreads -Wextra -Wno-long-long -Wno-variadic-macros -pedantic -DBOOST_ALL_DYN_LINK=1 -DBOOST_ALL_NO_LIB=1 -DBOOST_SYSTEM_DYN_LINK=1 -DBOOST_SYSTEM_NO_DEPRE
CATED -DNDEBUG  -I"." -c -o "build\boost\bin.v2\libs\chrono\build\gcc-mingw-4.8.1\release\threading-multi\chrono.o" "lib
s\chrono\src\chrono.cpp"

gcc.compile.c++ build\boost\bin.v2\libs\chrono\build\gcc-mingw-4.8.1\release\threading-multi\thread_clock.o

    "g++"  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pedantic -mthreads -Wextra -Wno-long-long -Wno
-variadic-macros -pedantic -DBOOST_ALL_DYN_LINK=1 -DBOOST_ALL_NO_LIB=1 -DBOOST_SYSTEM_DYN_LINK=1 -DBOOST_SYSTEM_NO_DEPRECATED -DNDEBUG  -I"." -c -o "build\boost\bin.v2\libs\chrono\build\gcc-mingw-4.8.1\release\threading-multi\thread_clock.o
" "libs\chrono\src\thread_clock.cpp"

gcc.compile.c++ build\boost\bin.v2\libs\chrono\build\gcc-mingw-4.8.1\release\threading-multi\process_cpu_clocks.o

    "g++"  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pedantic -mthreads -Wextra -Wno-long-long -Wno-variadic-macros -pedantic -DBOOST_ALL_DYN_LINK=1 -DBOOST_ALL_NO_LIB=1 -DBOOST_SYSTEM_DYN_LINK=1 -DBOOST_SYSTEM_NO_DEPRE
CATED -DNDEBUG  -I"." -c -o "build\boost\bin.v2\libs\chrono\build\gcc-mingw-4.8.1\release\threading-multi\process_cpu_clocks.o" "libs\chrono\src\process_cpu_clocks.cpp"

gcc.link.dll build\boost\bin.v2\libs\chrono\build\gcc-mingw-4.8.1\release\threading-multi\libboost_chrono-mgw48-mt-1_56.dll.a

    "g++"   "-Wl,--out-implib,build\boost\bin.v2\libs\chrono\build\gcc-mingw-4.8.1\release\threading-multi\libboost_chrono-mgw48-mt-1_56.dll.a" -o "build\boost\bin.v2\libs\chrono\build\gcc-mingw-4.8.1\release\threading-multi\libboost_chrono-mgw48-mt-1_56.dll"  -shared -Wl,--start-group "build\boost\bin.v2\libs\chrono\build\gcc-mingw-4.8.1\release\threading-m
ulti\chrono.o" "build\boost\bin.v2\libs\chrono\build\gcc-mingw-4.8.1\release\threading-multi\thread_clock.o" "build\boost\bin.v2\libs\chrono\build\gcc-mingw-4.8.1\release\threading-multi\process_cpu_clocks.o" "build\boost\bin.v2\libs\system\build\gcc-mingw-4.8.1\release\threading-multi\libboost_system-mgw48-mt-1_56.dll.a"  -Wl,-Bstatic  -Wl,-Bdynamic  -Wl,--end-group -mthreads

common.copy stage\lib\libboost_chrono-mgw48-mt-1_56.dll.a

    copy /b "build\boost\bin.v2\libs\chrono\build\gcc-mingw-4.8.1\release\threading-multi\libboost_chrono-mgw48-mt-1_56.dll.a" + this-file-does-not-exist-A698EE7806899E69 "stage\lib\libboost_chrono-mgw48-mt-1_56.dll.a"

build\boost\bin.v2\libs\chrono\build\gcc-mingw-4.8.1\release\threading-multi\libboost_chrono-mgw48-mt-1_56.dll.a
        1 file(s) copied.
common.copy stage\lib\libboost_chrono-mgw48-mt-1_56.dll

    copy /b "build\boost\bin.v2\libs\chrono\build\gcc-mingw-4.8.1\release\threading-multi\libboost_chrono-mgw48-mt-1_56.dll" + this-file-does-not-exist-A698EE7806899E69 "stage\lib\libboost_chrono-mgw48-mt-1_56.dll"

build\boost\bin.v2\libs\chrono\build\gcc-mingw-4.8.1\release\threading-multi\libboost_chrono-mgw48-mt-1_56.dll
        1 file(s) copied.
gcc.compile.c build\boost\bin.v2\libs\container\build\gcc-mingw-4.8.1\release\threading-multi\alloc_lib.o

    "g++" -x c -O3 -finline-functions -Wno-inline -Wall -mthreads -DBOOST_ALL_NO_LIB=1 -DBOOST_CONTAINER_DYN_LINK=1 -DN
DEBUG  -I"." -c -o "build\boost\bin.v2\libs\container\build\gcc-mingw-4.8.1\release\threading-multi\alloc_lib.o" "libs\container\src\alloc_lib.c"

gcc.link.dll build\boost\bin.v2\libs\container\build\gcc-mingw-4.8.1\release\threading-multi\libboost_container-mgw48-mt-1_56.dll.a

    "g++"   "-Wl,--out-implib,build\boost\bin.v2\libs\container\build\gcc-mingw-4.8.1\release\threading-multi\libboost_container-mgw48-mt-1_56.dll.a" -o "build\boost\bin.v2\libs\container\build\gcc-mingw-4.8.1\release\threading-multi\libboost_container-mgw48-mt-1_56.dll"  -shared -Wl,--start-group "build\boost\bin.v2\libs\container\build\gcc-mingw-4.8.1\release\threading-multi\alloc_lib.o"  -Wl,-Bstatic  -Wl,-Bdynamic  -Wl,--end-group -mthreads

common.copy stage\lib\libboost_container-mgw48-mt-1_56.dll.a

    copy /b "build\boost\bin.v2\libs\container\build\gcc-mingw-4.8.1\release\threading-multi\libboost_container-mgw48-mt-1_56.dll.a" + this-file-does-not-exist-A698EE7806899E69 "stage\lib\libboost_container-mgw48-mt-1_56.dll.a"

build\boost\bin.v2\libs\container\build\gcc-mingw-4.8.1\release\threading-multi\libboost_container-mgw48-mt-1_56.dll.a
        1 file(s) copied.
common.copy stage\lib\libboost_container-mgw48-mt-1_56.dll

    copy /b "build\boost\bin.v2\libs\container\build\gcc-mingw-4.8.1\release\threading-multi\libboost_container-mgw48-mt-1_56.dll" + this-file-does-not-exist-A698EE7806899E69 "stage\lib\libboost_container-mgw48-mt-1_56.dll"

build\boost\bin.v2\libs\container\build\gcc-mingw-4.8.1\release\threading-multi\libboost_container-mgw48-mt-1_56.dll
        1 file(s) copied.
Jamfile<C:\Users\amwink\usr\local\boost\libs\context\build>.masm build\boost\bin.v2\libs\context\build\gcc-mingw-4.8.1\release\address-model-32\architecture-x86\threading-multi\asm\make_i386_ms_pe_masm.o

    ml /c /Fo"build\boost\bin.v2\libs\context\build\gcc-mingw-4.8.1\release\address-model-32\architecture-x86\threading-multi\asm\make_i386_ms_pe_masm.o" "libs\context\src\asm\make_i386_ms_pe_masm.asm"

Microsoft (R) Macro Assembler Version 6.14.8444
Copyright (C) Microsoft Corp 1981-1997.  All rights reserved.

 Assembling: libs\context\src\asm\make_i386_ms_pe_masm.asm
Jamfile<C:\Users\amwink\usr\local\boost\libs\context\build>.masm build\boost\bin.v2\libs\context\build\gcc-mingw-4.8.1\release\address-model-32\architecture-x86\threading-multi\asm\jump_i386_ms_pe_masm.o

    ml /c /Fo"build\boost\bin.v2\libs\context\build\gcc-mingw-4.8.1\release\address-model-32\architecture-x86\threading-multi\asm\jump_i386_ms_pe_masm.o" "libs\context\src\asm\jump_i386_ms_pe_masm.asm"

Microsoft (R) Macro Assembler Version 6.14.8444
Copyright (C) Microsoft Corp 1981-1997.  All rights reserved.

 Assembling: libs\context\src\asm\jump_i386_ms_pe_masm.asm
gcc.compile.c++ build\boost\bin.v2\libs\context\build\gcc-mingw-4.8.1\release\threading-multi\dummy.o

    "g++"  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -mthreads  -DBOOST_ALL_NO_LIB=1 -DBOOST_CONTEXT_DYN_LINK=1 -DBOOST_CONTEXT_SOURCE -DNDEBUG  -I"." -c -o "build\boost\bin.v2\libs\context\build\gcc-mingw-4.8.1\release\
threading-multi\dummy.o" "libs\context\src\dummy.cpp"

gcc.link.dll build\boost\bin.v2\libs\context\build\gcc-mingw-4.8.1\release\threading-multi\libboost_context-mgw48-mt-1_56.dll.a

    "g++"   "-Wl,--out-implib,build\boost\bin.v2\libs\context\build\gcc-mingw-4.8.1\release\threading-multi\libboost_context-mgw48-mt-1_56.dll.a" -o "build\boost\bin.v2\libs\context\build\gcc-mingw-4.8.1\release\threading-multi\libboost_context-mgw48-mt-1_56.dll"  -shared -Wl,--start-group "build\boost\bin.v2\libs\context\build\gcc-mingw-4.8.1\release\address-model-32\architecture-x86\threading-multi\asm\make_i386_ms_pe_masm.o" "build\boost\bin.v2\libs\context\build\gcc-mingw-4.8.1\release\address-model-32\architecture-x86\threading-multi\asm\jump_i386_ms_pe_masm.o" "build\boost\bin.v2\libs\co
ntext\build\gcc-mingw-4.8.1\release\threading-multi\dummy.o"  -Wl,-Bstatic  -Wl,-Bdynamic  -Wl,--end-group -mthreads

build\boost\bin.v2\libs\context\build\gcc-mingw-4.8.1\release\address-model-32\architecture-x86\threading-multi\asm\make_i386_ms_pe_masm.o: file not recognized: File format not recognized

collect2.exe: error: ld returned 1 exit status
...skipped <pstage\lib>libboost_context-mgw48-mt-1_56.dll.a for lack of <pbuild\boost\bin.v2\libs\context\build\gcc-ming
w-4.8.1\release\threading-multi>libboost_context-mgw48-mt-1_56.dll.a...
...failed updating 1 target...
================================