[serialization] compile error on Mac OSX Tiger
Hi folks, after successfully deploying boost 1.44 on Windows and Linux, I now fail bitterly on Mac OSX. It is a Power PC with OSX 10.4 and gcc 4.0.1 When building boost with the following command: ./bjam --layout=system --with-serialization link=static variant=release threading=multi I get the following error: darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.0.1/release/link-static/threading- multi/basic_xml_archive.o darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.0.1/release/link-static/threading- multi/binary_iarchive.o ./boost/archive/basic_binary_iarchive.hpp:74: error: invalid application of 'sizeof' to incomplete type 'boost::STATIC_ASSERTION_FAILURE<false>' "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -no-cpp-precomp -gdwarf-2 -Wno-long-double -DBOOST_ALL_NO_LIB=1 -DNDEBUG -I"." -c -o "bin.v2/libs/serialization/build/darwin-4.0.1/release/link-static/threading- multi/binary_iarchive.o" "libs/serialization/src/binary_iarchive.cpp" ...failed darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.0.1/release/link-static/threading- multi/binary_iarchive.o... ...failed updating 1 target... ...updated 74 targets... I did NOT set architecture=combined. I want a PPC only build. Any help is greatly appreciated. Regards Philipp
Philipp Münzel wrote:
Hi folks,
after successfully deploying boost 1.44 on Windows and Linux, I now fail bitterly on Mac OSX.
It is a Power PC with OSX 10.4 and gcc 4.0.1 When building boost with the following command: ./bjam --layout=system --with-serialization link=static variant=release threading=multi
I get the following error: darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.0.1/release/link-static/threading- multi/basic_xml_archive.o darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.0.1/release/link-static/threading- multi/binary_iarchive.o ./boost/archive/basic_binary_iarchive.hpp:74: error: invalid application of 'sizeof' to incomplete type 'boost::STATIC_ASSERTION_FAILURE<false>'
"g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -no-cpp-precomp -gdwarf-2 -Wno-long-double -DBOOST_ALL_NO_LIB=1 -DNDEBUG -I"." -c -o "bin.v2/libs/serialization/build/darwin-4.0.1/release/link-static/threading- multi/binary_iarchive.o" "libs/serialization/src/binary_iarchive.cpp"
...failed darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.0.1/release/link-static/threading- multi/binary_iarchive.o... ...failed updating 1 target... ...updated 74 targets...
I did NOT set architecture=combined. I want a PPC only build.
Any help is greatly appreciated.
try adding: #include <boost/serialization/tracking.hpp> to ./boost/archive/basic_binary_iarchive.hpp: Robert Ramey
Regards Philipp
Robert Ramey <ramey <at> rrsd.com> writes:
try adding:
#include <boost/serialization/tracking.hpp>
to ./boost/archive/basic_binary_iarchive.hpp:
Robert Ramey
I changed the beginning of boost/archive/basic_binary_iarchive.hpp to read as follows: #ifndef BOOST_ARCHIVE_BASIC_BINARY_IARCHIVE_HPP #define BOOST_ARCHIVE_BASIC_BINARY_IARCHIVE_HPP // MS compatible compilers support #pragma once #if defined(_MSC_VER) && (_MSC_VER >= 1020) # pragma once #endif /////////1/////////2/////////3/////////4/////////5/////////6/////////7///////// // ... collapsed... // See http://www.boost.org for updates, documentation, and revision history. #include <boost/serialization/tracking.hpp> #include <boost/config.hpp> #include <boost/detail/workaround.hpp> #include <boost/serialization/pfto.hpp> unfortunately, I keep getting the same error as before: darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.0.1/release/link- static/threading-multi/binary_iarchive.o ./boost/archive/basic_binary_iarchive.hpp:75: error: invalid application of 'sizeof' to incomplete type 'boost::STATIC_ASSERTION_FAILURE<false>' "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -no-cpp-precomp -gdwarf-2 -Wno-long-double -DBOOST_ALL_NO_LIB=1 -DNDEBUG -I"." -c -o "bin.v2/libs/serialization/build/darwin-4.0.1/release/link-static /threading-multi/binary_iarchive.o" "libs/serialization/src/binary_iarchive.cpp" ...failed darwin.compile.c++ bin.v2/libs/serialization/build/darwin- 4.0.1/release/link-static/threading-multi/binary_iarchive.o... ...failed updating 1 target... ...updated 6 targets... Any other thoughts? Philipp
participants (3)
-
Philipp Münzel
-
Philipp Münzel
-
Robert Ramey