Opened 7 years ago

Closed 7 years ago

#11791 closed Bugs (fixed)

undefined reference to ~basic_text_iprimitive() when linking to libboost_serialization.so

Reported by: anonymous Owned by: Robert Ramey
Milestone: To Be Determined Component: serialization
Version: Boost 1.59.0 Severity: Showstopper
Keywords: Cc: bogdans@…

Description

When I'm trying to link into libboost_serialization.so I get such error:

undefined reference to `boost::archive::basic_text_iprimitive<stlp_std::basic_istream<char, stlp_std::char_traits<char> > >::~basic_text_iprimitive()'

I suppose that the problem is that BOOST_SYMBOL_VISIBLE was added into class basic_text_iprimitive. nm says that this symbols is 't', while in bost-1.57 (without BOOST_SYMBOL_VISIBLE) was 'W'.

The test case:

#include <boost/archive/text_iarchive.hpp>
#include <sstream>

int main()
{
	std::istringstream istr;
	boost::archive::text_iarchive ia( istr );
	return 0;
}

Compiler info:

Using built-in specs.
COLLECT_GCC=i686-pc-linux-gnu-g++
COLLECT_LTO_WRAPPER=/home/build/toolchain/gcc-4.7.2.5/libexec/gcc/i686-pc-linux-gnu/4.7.2/lto-wrapper
Target: i686-pc-linux-gnu
Configured with: ../gcc-4.7.2/configure --target=i686-pc-linux-gnu --prefix=/home/build/toolchain/gcc-4.7.2.5 --disable-nls --enable-languages=c,c++
Thread model: posix
gcc version 4.7.2 (GCC)

Change History (3)

comment:1 by Bogdan <bogdans@…>, 7 years ago

Cc: bogdans@… added

comment:2 by Bogdan <bogdans@…>, 7 years ago

The same problem with ~basic_text_oprimitive.

comment:3 by Robert Ramey, 7 years ago

Resolution: fixed
Status: newclosed

I've made changes which I believed address this. They are currently in the develop branch. Being optimistic, I'm going to make this ticket as fixed.

Note: See TracTickets for help on using tickets.