building of boost 1.33.1 - elf, serialization lib, and some misc warnings in thread & wave libs

All: There are some concerning (?) messages when building Boost Serialization, and other seemingly trivial warnings for Boost Threads, and Boost Wave that ought to be cleaned up. I apologize for the noise if this has been reported before, but I've been away from this NG for a while, given that I've moved house, and state, and job in the last few weeks. Miscellany: ---------- Building Boost 1.33.1 with gcc-3.3.5, on Debian 1:3.3.5-12, on a 2.6 Kernal. Being a luddite when it comes to the internals of elf formats, I get odd messages try to build Boost when it gets to the the Serialization Library - hopefully someone can interpret them for me: Boost.Serialization ------------------- gcc-C++-action bin/boost/libs/serialization/build/libboost_serialization.so/gcc/debug/shared-linkable-true/xml_oarchive.o gcc-Link-action bin/boost/libs/serialization/build/libboost_serialization.so/gcc/debug/shared-linkable-true/libboost_serialization-gcc-d-1_33_1.so /usr/bin/ld: `.L549' referenced in section `.rodata' of bin/boost/libs/serialization/build/libboost_serialization.so/gcc/debug/shared-linkable-true/basic_oarchive.o: defined in discarded section `.gnu.linkonce.t._ZNK5boost7archive17archive_exception4whatEv' of bin/boost/libs/serialization/build/libboost_serialization.so/gcc/debug/shared-linkable-true/basic_oarchive.o /usr/bin/ld: `.L559' referenced in section `.rodata' of bin/boost/libs/serialization/build/libboost_serialization.so/gcc/debug/shared-linkable-true/basic_oarchive.o: defined in discarded section `.gnu.linkonce.t._ZNK5boost7archive17archive_exception4whatEv' of bin/boost/libs/serialization/build/libboost_serialization.so/gcc/debug/shared-linkable-true/basic_oarchive.o Similarly for : basic_oarchive.o basic_text_iprimitive.o basic_text_oprimitive.o binary_iarchive.o binary_oarchive.o text_iarchive.o text_oarchive.o xml_grammar.o xml_iarchive.o xml_oarchive.o and the same (with some variation) for release paths: gcc-C++-action bin/boost/libs/serialization/build/libboost_wserialization.so/gcc/release/shared-linkable-true/threading-multi/xml_woarchive.o gcc-Link-action bin/boost/libs/serialization/build/libboost_wserialization.so/gcc/release/shared-linkable-true/threading-multi/libboost_wserialization-gcc-mt-1_33_1.so /usr/bin/ld: `.L1456' referenced in section `.rodata' of bin/boost/libs/serialization/build/libboost_wserialization.so/gcc/release/shared-linkable-true/threading-multi/basic_text_woprimitive.o: defined in discarded section `.gnu.linkonce.t._ZNK5boost7archive17archive_exception4whatEv' of bin/boost/libs/serialization/build/libboost_wserialization.so/gcc/release/shared-linkable-true/threading-multi/basic_text_woprimitive.o /usr/bin/ld: `.L1466' referenced in section `.rodata' of bin/boost/libs/serialization/build/libboost_wserialization.so/gcc/release/shared-linkable-true/threading-multi/basic_text_woprimitive.o: defined in discarded section `.gnu.linkonce.t._ZNK5boost7archive17archive_exception4whatEv' of bin/boost/libs/serialization/build/libboost_wserialization.so/gcc/release/shared-linkable-true/threading-multi/basic_text_woprimitive.o /usr/bin/ld: `.L1457' referenced in section `.rodata' of bin/boost/libs/serialization/build/libboost_wserialization.so/gcc/release/shared-linkable-true/threading-multi/basic_text_woprimitive.o: defined in discarded section `.gnu.linkonce.t._ZNK5boost7archive17archive_exception4whatEv' of bin/boost/libs/serialization/build/libboost_wserialization.so/gcc/release/shared-linkable-true/threading-multi/basic_text_woprimitive.o ... you get the idea. All I can fathom is that some symbols are referenced in read-only-data sections - that aren't ever going to be read. Building with gcc-3.3.5, on Debian 1:3.3.5-12, on a 2.6 Kernal. Any ideas as to why I get the above would be appreciated - I know Robert went to great lengths to ensure backward compatibility with older compilers for the Serialization lib, so I'm guessing it's some issue with my current system setup, who knows ? That aside, there's a warning that might otherwise be cleaned up (if not already done so), about unused variables: Boost.Threads: -------------- /home/users/manfredd/MyDownloads/boost_1_33_1/libs/thread/src/recursive_mutex.cpp: In member function `boost::recursive_mutex::recursive_mutex()': /home/users/manfredd/MyDownloads/boost_1_33_1/libs/thread/src/recursive_mutex.cpp:299: warning: unused variable `int res' /home/users/manfredd/MyDownloads/boost_1_33_1/libs/thread/src/recursive_mutex.cpp: In member function `boost::recursive_try_mutex::recursive_try_mutex()': /home/users/manfredd/MyDownloads/boost_1_33_1/libs/thread/src/recursive_mutex.cpp:455: warning: unused variable `int res' Boost.Wave ---------- gcc-C++-action bin/boost/libs/wave/build/libboost_wave.a/gcc/release/cpp_re.o cpp.re: In function `boost::wave::token_id boost::wave::cpplexer::re2clex::scan(boost::wave::cpplexer::re2clex::Scanner*) ': cpp_re.cpp:407: warning: `unsigned int yyaccept' might be used uninitialized in this function Thanks in advance, -- Manfred Doudar - Research Engineer National ICT Australia (NICTA) Research School of Information Sciences and Engineering (RSISE) The Australian National University - Canberra, ACT 0200 AUSTRALIA

Manfred Doudar wrote:
bin/boost/libs/serialization/build/libboost_serialization.so/gcc/debug/shared-linkable-true/xml_oarchive.o gcc-Link-action
bin/boost/libs/serialization/build/libboost_serialization.so/gcc/debug/shared-linkable-true/libboost_serialization-gcc-d-1_33_1.so
/usr/bin/ld: `.L549' referenced in section `.rodata' of
bin/boost/libs/serialization/build/libboost_serialization.so/gcc/debug/shared-linkable-true/basic_oarchive.o:
defined in discarded section `.gnu.linkonce.t._ZNK5boost7archive17archive_exception4whatEv' of
This is a gcc bug: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16625 As far as I know, no workaround is available, other then sticking to older version of binutils. That's what we did, and have no problems. Another possible solution is to pester gcc developers to fix this. - Volodya
participants (2)
-
Manfred Doudar
-
Vladimir Prus