Thrift SVN and latest GCC issue: Undefined symbols: "apache::thrift::protocol::TBinaryProtocolT<apache::thrift::transport::TTransport>::VERSION_MASK" -----------------------------------------------------------------------------------------------------------------------------------------------------
Key: THRIFT-1325 URL: https://issues.apache.org/jira/browse/THRIFT-1325 Project: Thrift Issue Type: Bug Components: C++ - Library Environment: Mac OS 10.6.8 x86_64, GNU GCC 4.6.1 hand compiled Reporter: Philippe STRAUSS Priority: Blocker Fix For: 0.8 I need latest gcc for a pet project of mine using intrisics. Using GCC 4.6.1, building code generated by thrift for a C++ server, I always get the error cut and pasted below at link time. Using apple shipped gcc 4.2.1 it build (link) fine, but cannot use it for another part of my project :( + /opt/gnucc/bin/g++ -g -DDEBUG -I/usr/local/include -I/opt/local/include -I/opt/misc/include -I/opt/misc/include/thrift -I/opt/av/include -I/opt/num/include -o jack_preamp.nat jack_preamp.o rc_types.o rc_constants.o Control.o ../common_c/libcommon.a ../jackc/libjackc.a ../config/libcf.a ../libsigpath/libsigpath.a -framework CoreAudio -framework CoreServices -framework AudioUnit -L/usr/local/lib -ljack -L/opt/local/lib -lsndfile -L/opt/misc/lib -lconfig -L/opt/misc/lib -lthrift -L/opt/av/lib -L/opt/num/lib -lconvolve -lsndfile -lsamplerate -lfftw3f Undefined symbols: "apache::thrift::protocol::TBinaryProtocolT<apache::thrift::transport::TTransport>::VERSION_MASK", [==================referenced from:================================================================== ] 00225 / 00227 apache::thrift::protocol::TBinaryProtocolT<apache::thrift::transport::TTransport>::readMessageBegin(std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, apache::thrift::protocol::TMessageType&, int&) in jack_preamp.o "apache::thrift::protocol::TBinaryProtocolT<apache::thrift::transport::TTransport>::VERSION_1", referenced from: apache::thrift::protocol::TBinaryProtocolT<apache::thrift::transport::TTransport>::writeMessageBegin(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, apache::thrift::protocol::TMessageType, int) in jack_preamp.o apache::thrift::protocol::TBinaryProtocolT<apache::thrift::transport::TTransport>::readMessageBegin(std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, apache::thrift::protocol::TMessageType&, int&) in jack_preamp.o ld: symbol(s) not found collect2: ld a retourné 1 code d'état d'exécution -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira