I'm trying to build Boost on Windows with the 32-bit binaries supplied by http://www.equation.com/servlet/equation.cmd?call=fortran. Aside from about 10 billion "visibility attribute" warnings, everything appears to compile correctly except the Thread library: (running from a Windows command prompt) bjam toolset=gcc link=static runtime-link=static stage The build output that I get is below, but it looks like something is wrong with the macro configuration when including boost/detail/interlocked.hpp. Any help? ----- Performing configuration checks - has_icu builds : no warning: Graph library does not contain MPI-based parallel components. note: to enable them, add "using mpi ;" to your user-config.jam - ../config//has_long_double_support builds : yes 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: Unable to construct ./stage-unversioned warning: Unable to construct ./stage-unversioned Component configuration: - date_time : building - filesystem : building - graph : building - graph_parallel : building - iostreams : building - math : building - mpi : building - program_options : building - python : building - random : building - regex : building - serialization : building - signals : building - system : building - test : building - thread : building - wave : building ...patience... ...patience... ...patience... ...patience... ...found 7329 targets... ...updating 8 targets... gcc.compile.c++ bin.v2\libs\thread\build\gcc-mingw-4.5.1\debug\link-static\runtime-link-static\threading-multi\win32\thread.o In file included from ./boost/thread/once.hpp:14:0, from libs\thread\src\win32\thread.cpp:17: ./boost/thread/win32/once.hpp: In function 'void boost::call_once(boost::once_flag&, Function)': ./boost/thread/win32/once.hpp:136:20: error: '_InterlockedCompareExchange' is not a member of 'boost::detail' ./boost/thread/win32/once.hpp:152:25: error: '_InterlockedIncrement' is not a member of 'boost::detail' ./boost/thread/win32/once.hpp:155:21: error: '_InterlockedExchange' is not a member of 'boost::detail' ./boost/thread/win32/once.hpp:169:21: error: '_InterlockedExchange' is not a member of 'boost::detail' ./boost/thread/win32/once.hpp:184:17: error: '_InterlockedIncrement' is not a member of 'boost::detail' "g++" -ftemplate-depth-128 -O0 -fno-inline -Wall -g -mthreads -Wno-long-long -DBOOST_ALL_NO_LIB=1 -DBOOST_THREAD_BUILD_LIB=1 -I"." -c -o "bin.v2\libs\thread\build\gcc-mingw-4.5.1\debug\link-static\runtime-link-static\threading-multi\win32\thread.o" "libs\thread\src\win32\thread.cpp" ...failed gcc.compile.c++ bin.v2\libs\thread\build\gcc-mingw-4.5.1\debug\link-static\runtime-link-static\threading-multi\win32\thread.o... ...skipped <pbin.v2\libs\thread\build\gcc-mingw-4.5.1\debug\link-static\runtime-link-static\threading-multi>libboost_thread-mgw45-mt-sd-1_44.a(clean) for lack of <pbin.v2\libs\thread\build\gcc-mingw-4.5.1\debug\link-static\runtime-link-static\threading-multi>win32\thread.o... ...skipped <pbin.v2\libs\thread\build\gcc-mingw-4.5.1\debug\link-static\runtime-link-static\threading-multi>libboost_thread-mgw45-mt-sd-1_44.a for lack of <pbin.v2\libs\thread\build\gcc-mingw-4.5.1\debug\link-static\runtime-link-static\threading-multi>win32\thread.o... ...skipped <pstage\lib>libboost_thread-mgw45-mt-sd-1_44.a for lack of <pbin.v2\libs\thread\build\gcc-mingw-4.5.1\debug\link-static\runtime-link-static\threading-multi>libboost_thread-mgw45-mt-sd-1_44.a... gcc.compile.c++ bin.v2\libs\thread\build\gcc-mingw-4.5.1\release\link-static\runtime-link-static\threading-multi\win32\thread.o In file included from ./boost/thread/once.hpp:14:0, from libs\thread\src\win32\thread.cpp:17: ./boost/thread/win32/once.hpp: In function 'void boost::call_once(boost::once_flag&, Function)': ./boost/thread/win32/once.hpp:136:20: error: '_InterlockedCompareExchange' is not a member of 'boost::detail' ./boost/thread/win32/once.hpp:152:25: error: '_InterlockedIncrement' is not a member of 'boost::detail' ./boost/thread/win32/once.hpp:155:21: error: '_InterlockedExchange' is not a member of 'boost::detail' ./boost/thread/win32/once.hpp:169:21: error: '_InterlockedExchange' is not a member of 'boost::detail' ./boost/thread/win32/once.hpp:184:17: error: '_InterlockedIncrement' is not a member of 'boost::detail' In file included from ./boost/thread/shared_mutex.hpp:14:0, from ./boost/thread/detail/thread_group.hpp:9, from ./boost/thread/thread.hpp:24, from libs\thread\src\win32\thread.cpp:10: ./boost/thread/win32/shared_mutex.hpp: In member function 'T boost::shared_mutex::interlocked_compare_exchange(T*, T, T) [with T = boost::shared_mutex::state_data]': ./boost/thread/win32/shared_mutex.hpp:110:103: instantiated from here ./boost/thread/win32/shared_mutex.hpp:50:99: warning: dereferencing type-punned pointer will break strict-aliasing rules ./boost/thread/win32/shared_mutex.hpp:50:99: warning: dereferencing type-punned pointer will break strict-aliasing rules ./boost/thread/win32/shared_mutex.hpp:51:52: warning: dereferencing type-punned pointer will break strict-aliasing rules ./boost/thread/win32/shared_mutex.hpp:51:52: warning: dereferencing type-punned pointer will break strict-aliasing rules "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -mthreads -Wno-long-long -DBOOST_ALL_NO_LIB=1 -DBOOST_THREAD_BUILD_LIB=1 -DNDEBUG -I"." -c -o "bin.v2\libs\thread\build\gcc-mingw-4.5.1\release\link-static\runtime-link-static\threading-multi\win32\thread.o" "libs\thread\src\win32\thread.cpp" ...failed gcc.compile.c++ bin.v2\libs\thread\build\gcc-mingw-4.5.1\release\link-static\runtime-link-static\threading-multi\win32\thread.o... ...skipped <pbin.v2\libs\thread\build\gcc-mingw-4.5.1\release\link-static\runtime-link-static\threading-multi>libboost_thread-mgw45-mt-s-1_44.a(clean) for lack of <pbin.v2\libs\thread\build\gcc-mingw-4.5.1\release\link-static\runtime-link-static\threading-multi>win32\thread.o... ...skipped <pbin.v2\libs\thread\build\gcc-mingw-4.5.1\release\link-static\runtime-link-static\threading-multi>libboost_thread-mgw45-mt-s-1_44.a for lack of <pbin.v2\libs\thread\build\gcc-mingw-4.5.1\release\link-static\runtime-link-static\threading-multi>win32\thread.o... ...skipped <pstage\lib>libboost_thread-mgw45-mt-s-1_44.a for lack of <pbin.v2\libs\thread\build\gcc-mingw-4.5.1\release\link-static\runtime-link-static\threading-multi>libboost_thread-mgw45-mt-s-1_44.a... ...failed updating 2 targets... ...skipped 6 targets...
participants (1)
-
Paul Mensonides