Subject: [Boost-bugs] [Boost C++ Libraries] #1758: Boost 1.35 fails to build under gcc 3.4 unix Solaris
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2008-04-02 17:06:36
#1758: Boost 1.35 fails to build under gcc 3.4 unix Solaris
--------------------------------------+-------------------------------------
Reporter: jgottman_at_[hidden] | Owner: pdimov
Type: Patches | Status: new
Milestone: Boost 1.36.0 | Component: smart_ptr
Version: Boost 1.35.0 | Severity: Showstopper
Keywords: |
--------------------------------------+-------------------------------------
When I tried to build the boost libraries under gcc 3.4 unix Solaris, I
repeatedly got an error message that looked like
{{{
/var/tmp//ccdt31Ke.s: Assembler messages:
/var/tmp//ccdt31Ke.s:619: Error: Architecture mismatch on "cas".
/var/tmp//ccdt31Ke.s:619: (Requires v9|v9a|v9b; requested architecture is
v8.)
}}}
I traced the problem to the following lines in
<detail\sp_counted_base.hpp>:
{{{
#elif defined(__GNUC__) && ( defined( __sparcv8 ) || defined( __sparcv9 )
)
# include <boost/detail/sp_counted_base_gcc_sparc.hpp>
}}}
which call the following command:
{{{
__asm__ __volatile__( "cas %0, %2, %1"
: "+m" (*dest_), "+r" (swap_)
: "r" (compare_)
: "memory" );
}}}
It looks like __sparcv8 is not sufficient to call this command, only
__sparcv9 is. Note also the <detail/sp_counted_base_solaris.hpp> is
apparantly never included.
Joe Gottman
--
Ticket URL: <http://svn.boost.org/trac/boost/ticket/1758>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:49:57 UTC