Problems with compiling Boost 1.32.0 in RHEL 3.0 on Itanium2
First of all, Boost 1.32.0 can be compiled correctly in IA32 platform without any problems. But when I tried to compile it on Itanium2 system, I ran into the following problem: I issued the standard building command: bjam "-sTOOLS=gcc" install which supposes to compile both the debug and the release , both the static and the dynamic, both the single-threading and multi-threading versions, specified by the default value of the BUILD variable: "-sBUILD=debug release <runtime-link>static/dynamic <threading>single/multi" However an error always occurred when the compilation went to this place: gcc-C++-action bin/boost/libs/thread/build/libboost_thread.so/gcc/debug/shared-l inkable-true/threading-multi/barrier.o In file included from /home/xyg/downloads/boost_1_32_0/boost/thread/detail/confi g.hpp:18, from /home/xyg/downloads/boost_1_32_0/libs/thread/src/barrier.c pp:12: /home/xyg/downloads/boost_1_32_0/boost/config/requires_threads.hpp:47:5: #error "Compiler threading support is not turned on. Please set the correct command lin e options for threading: -pthread (Linux), -pthreads (Solaris) or -mthreads (Min gw32)" Since my Itanium2 runs RHEL 3.0 with the standard GCC 3.2.3, the same version of the GCC that I used to compile Boost in RHEL 3.0 on IA32 platform, I don't understand why this error happened. Could anyone tell me how to get Boost 1.32.0 compiled smoothly on Itanium2 machine? Any information are greatly appreciated! Thanks a lot! __________________________________ Do you Yahoo!? Yahoo! Mail - Find what you need with new enhanced search. http://info.mail.yahoo.com/mail_250
Yuguang Xiong wrote:
First of all, Boost 1.32.0 can be compiled correctly in IA32 platform without any problems.
But when I tried to compile it on Itanium2 system, I ran into the following problem:
I issued the standard building command:
bjam "-sTOOLS=gcc" install [cut] "Compiler threading support is not turned on. Please set the correct command lin e options for threading: -pthread (Linux), -pthreads (Solaris) or -mthreads (Min gw32)"
Ouch :-(
Since my Itanium2 runs RHEL 3.0 with the standard GCC 3.2.3, the same version of the GCC that I used to compile Boost in RHEL 3.0 on IA32 platform, I don't understand why this error happened.
Neither do I since the default for the Boost.Build gcc toolset is to add "-pthread" to the gcc options.
Could anyone tell me how to get Boost 1.32.0 compiled smoothly on Itanium2 machine? Any information are greatly appreciated!
Run "bjam -n -sTOOLS=gcc". This will show you what the build commands t wants to execute. This way you can verify that the -pthread option is included. If it is, I really don't know what to do :-( If it's not in there do a "uname" if it's any of SunOS, BeOS, Darwin, IRIX, or HP_UX then we have a problem as the uname would be reporting the wrong thing. By the way those options are added in boost-root/tools/build/v1/gcc-tools.jam on lines ~100 >> 150, you could try forcing adding the option. -- -- Grafik - Don't Assume Anything -- Redshift Software, Inc. - http://redshift-software.com -- rrivera/acm.org - grafik/redshift-software.com - 102708583/icq
It seems that all the troubles are caused by the
undefined BOOST_HAS_THREADS, which then causes the
breaking down in:
boost_root/boost/config/requires_threads.hpp
I don't why this didn't cause a problem in RHEL GCC
3.2.3 on IA32. There are probably some diferences
between the gcc's pre-processor on IA32 and that on
IA64.
Anyone can look into it and fix this problem?
--- Rene Rivera
Yuguang Xiong wrote:
First of all, Boost 1.32.0 can be compiled correctly in IA32 platform without any problems.
But when I tried to compile it on Itanium2 system, I ran into the following problem:
I issued the standard building command:
bjam "-sTOOLS=gcc" install [cut] "Compiler threading support is not turned on. Please set the correct command lin e options for threading: -pthread (Linux), -pthreads (Solaris) or -mthreads (Min gw32)"
Ouch :-(
Since my Itanium2 runs RHEL 3.0 with the standard GCC 3.2.3, the same version of the GCC that I used to compile Boost in RHEL 3.0 on IA32 platform, I don't understand why this error happened.
Neither do I since the default for the Boost.Build gcc toolset is to add "-pthread" to the gcc options.
Could anyone tell me how to get Boost 1.32.0 compiled smoothly on Itanium2 machine? Any information are greatly appreciated!
Run "bjam -n -sTOOLS=gcc". This will show you what the build commands t wants to execute. This way you can verify that the -pthread option is included. If it is, I really don't know what to do :-( If it's not in there do a "uname" if it's any of SunOS, BeOS, Darwin, IRIX, or HP_UX then we have a problem as the uname would be reporting the wrong thing. By the way those options are added in boost-root/tools/build/v1/gcc-tools.jam on lines ~100 >> 150, you could try forcing adding the option.
-- -- Grafik - Don't Assume Anything -- Redshift Software, Inc. - http://redshift-software.com -- rrivera/acm.org - grafik/redshift-software.com - 102708583/icq
_______________________________________________ Boost-users mailing list Boost-users@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/boost-users
__________________________________ Do you Yahoo!? Take Yahoo! Mail with you! Get it on your mobile phone. http://mobile.yahoo.com/maildemo
It seems that all the troubles are caused by the undefined BOOST_HAS_THREADS, which then causes the breaking down in:
boost_root/boost/config/requires_threads.hpp
I don't why this didn't cause a problem in RHEL GCC 3.2.3 on IA32. There are probably some diferences between the gcc's pre-processor on IA32 and that on IA64.
Anyone can look into it and fix this problem?
I don't know anyone with access to an IA-64 linux machine, two questions though: 1) Does the compiler support the -pthread option. 2) Does specifying -pthread set any macros on the command line (normally it defines _REENTRANT on linux). Thanks, John.
participants (3)
-
John Maddock
-
Rene Rivera
-
Yuguang Xiong