
Hello! I'm having problems building boost 1.35 on a solaris machine with gcc 3.4.2. Pretty early on I get: gcc.compile.c++bin.v2/libs/test/build/gcc-3.4.2/release/threading-multi/debug.o /usr/ccs/bin/as: "/var/tmp//ccLNzYoL.s", line 3775: error: cannot use v8plus instructions in a non-v8plus target binary /usr/ccs/bin/as: "/var/tmp//ccLNzYoL.s", line 3815: error: cannot use v8plus instructions in a non-v8plus target binary ..... Here's some info about my system: $ uname -a SunOS se06pluto 5.8 Generic_117350-51 sun4u sparc SUNW,Sun-Fire-880 $ gcc -v Reading specs from /usr/local/lib/gcc/sparc-sun-solaris2.8/3.4.2/specs Configured with: ../configure --with-as=/usr/ccs/bin/as --with-ld=/usr/ccs/bin/ld --disable-nls --disable-libgcj --enable-languages=c, c++ Thread model: posix gcc version 3.4.2 I have found the following thread which seems to address my problem: http://www.nabble.com/-detail--sparc-v8plus-build-problem-td7944960.html After reading this I'm still unsure about what to do. Should I edit tools/build/v2/tools/gcc.jam and do something with one of these lines? # Sparc flags gcc OPTIONS <architecture>sparc/<address-model>32 : -m32 ; flags gcc OPTIONS <architecture>sparc/<address-model>64 : -m64 ; cpu-flags gcc OPTIONS : sparc : c3 : -mcpu=c3 : default ; cpu-flags gcc OPTIONS : sparc : v7 : -mcpu=v7 ; cpu-flags gcc OPTIONS : sparc : cypress : -mcpu=cypress ; cpu-flags gcc OPTIONS : sparc : v8 : -mcpu=v8 ; cpu-flags gcc OPTIONS : sparc : supersparc : -mcpu=supersparc ; cpu-flags gcc OPTIONS : sparc : sparclite : -mcpu=sparclite ; cpu-flags gcc OPTIONS : sparc : hypersparc : -mcpu=hypersparc ; cpu-flags gcc OPTIONS : sparc : sparclite86x : -mcpu=sparclite86x ; cpu-flags gcc OPTIONS : sparc : f930 : -mcpu=f930 ; cpu-flags gcc OPTIONS : sparc : f934 : -mcpu=f934 ; cpu-flags gcc OPTIONS : sparc : sparclet : -mcpu=sparclet ; cpu-flags gcc OPTIONS : sparc : tsc701 : -mcpu=tsc701 ; cpu-flags gcc OPTIONS : sparc : v9 : -mcpu=v9 ; cpu-flags gcc OPTIONS : sparc : ultrasparc : -mcpu=ultrasparc ; cpu-flags gcc OPTIONS : sparc : ultrasparc3 : -mcpu=ultrasparc3 ; Or is there something else I can do? Thanks, Lars

lolsson@comhem.se wrote:
Hello!
I'm having problems building boost 1.35 on a solaris machine with gcc 3.4.2. Pretty early on I get:
gcc.compile.c++bin.v2/libs/test/build/gcc-3.4.2/release/threading-multi/debug.o /usr/ccs/bin/as: "/var/tmp//ccLNzYoL.s", line 3775: error: cannot use v8plus instructions in a non-v8plus target binary /usr/ccs/bin/as: "/var/tmp//ccLNzYoL.s", line 3815: error: cannot use v8plus instructions in a non-v8plus target binary .....
This is a known bug: http://svn.boost.org/trac/boost/ticket/1758. You can either build with instruction-set = v9 (which causes changes in your makefile similar to the one's you suggested), or you can #define BOOST_SP_DISABLE_THREADS , which causes you to avoid the .hpp file that is giving you the problem. Joe Gottman

Joe Gottman wrote:
This is a known bug: http://svn.boost.org/trac/boost/ticket/1758. Ok - thanks!
You can either build with instruction-set = v9 (which causes changes in your makefile similar to the one's you suggested), I'm not familiar enough with boost build to understand what it means to do this. Which file do I modify? Do I add the line "instruction-set = v9" to this file? Do I have to run the configure script again? Or is it enough to just run make?
Thanks, Lars
participants (3)
-
Joe Gottman
-
Lars Olsson
-
lolsson@comhem.se