Hello --

I'm having trouble compiling our code on redhat gcc 4.4.6 (full specs below). There are a lot of errors in the output, but paring down the list a bit, some examples are pasted below. This exact same code successfully compiles on several OSX compilers, as well as redhat gcc 4.1.2.

I posted this to Boost.Build, and someone informed me I had posted to the wrong list. This person mentioned that:

OSX has gcc-4.2 or clang 3.1 for 10.8. 

The gcc project has done some cleanups of standard library code, eliminating 
some implicit dependencies. So you might need to explicitly include  the now 
missing headers.

Yours,

Jürgen



Does anybody have any suggestions for which headers I might be missing? I do not have direct access to the machine with these compile errors, so it's hard for me to just fiddle with my code.

thanks for any advice!

Amos.

1)

gcc.compile.c++ pymodule/bin/gcc-4.4.6/release-core/threading-multi/SingleCalculator_BP.o
In file included from pymodule/SingleCalculator_BP.cc:13:
../tools/boost/boost/range/algorithm/equal.hpp: In function ‘void core::wrap_vector(const std::string&) [with T = boost::shared_ptr<core::energy::SingleCalculator>, bool noProxy = true]’:
pymodule/SingleCalculator_BP.cc:33:   instantiated from here
../tools/boost/boost/range/algorithm/equal.hpp:160: error: ‘boost::range’ is not a function,
../tools/boost/boost/python/iterator.hpp:92: error:   conflict with ‘template<class Accessor1, class Accessor2> boost::python::api::object boost::python::range(Accessor1, Accessor2)’
pymodule/wrap_vector.hh:68: error:   in call to ‘range’

    "g++"  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -g -pthread -fPIC -Dcore_MPI -Dkiss_fft_scalar=float -Wno-unknown-pragmas -Wstrict-aliasing=2 -fno-strict-aliasing -DBOOST_PYTHON_MAX_ARITY=30 -DBOOST_SYSTEM_DYN_LINK=1  -I"../tools/boost" -I"../tools/python/include/python2.7" -I"/import/rh_software/openmpi-1.4.3/include" -c -o "pymodule/bin/gcc-4.4.6/release-core/threading-multi/SingleCalculator_BP.o" "pymodule/SingleCalculator_BP.cc"




2)

<snip>
instantiated from here

../tools/boost/boost/mpi/detail/mpi_datatype_oarchive.hpp:51: error: invalid use of incomplete type ‘struct boost::is_enum<float>’
../tools/boost/boost/type_traits/is_enum.hpp:181: error: declaration of ‘struct boost::is_enum<float>’
<snip>



3)
<snip>
../tools/boost/boost/mpi/detail/mpi_datatype_oarchive.hpp: In member function ‘void boost::mpi::detail::mpi_datatype_oarchive::save_override(const T&, int) [with T = long unsigned int]’:
../tools/boost/boost/mpi/detail/mpi_datatype_oarchive.hpp:51: error: template instantiation depth exceeds maximum of 128 (use -ftemplate-depth-NN to increase the maximum) instantiating ‘struct boost::is_enum<long unsigned int>’
<snip>



4)

<snip>
instantiated from here
../tools/boost/boost/archive/detail/check.hpp:78: error: ‘value’ is not a member of ‘boost::archive::detail::check_object_versioning() [with T = boost::serialization::nvp<float>]::typex
<snip>




g++ -v
Using built-in specs.
Target: x86_64-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre --enable-libgcj-multifile --enable-java-maintainer-mode --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib --with-ppl --with-cloog --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux
Thread model: posix
gcc version 4.4.6 20110731 (Red Hat 4.4.6-3) (GCC)