Skip to content
This repository has been archived by the owner on Sep 12, 2018. It is now read-only.

../libthpp.so: undefined reference to `apache::thrift::protocol::TProtocolException::throwExceededSizeLimit()' #58

Closed
gbolin opened this issue Feb 27, 2018 · 2 comments

Comments

@gbolin
Copy link

gbolin commented Feb 27, 2018

hi all, when I compiled thpp using the ./build.sh, it has occured this problem
[ 75%] Building CXX object test/CMakeFiles/storage_test.dir/StorageTest.cpp.o
[ 80%] Linking CXX executable storage_test
../libthpp.so: undefined reference to apache::thrift::protocol::TProtocolException::throwExceededSizeLimit()' ../libthpp.so: undefined reference to apache::thrift::protocol::TProtocolException::throwReportedTypeMismatch()'
../libthpp.so: undefined reference to apache::thrift::util::detail::throwInvalidVarint()' ../libthpp.so: undefined reference to apache::thrift::protocol::TProtocolException::throwMissingRequiredField(folly::Range<char const*>, folly::Range<char const*>)'
../libthpp.so: undefined reference to apache::thrift::CompactProtocolReader::throwBadType(unsigned char)' ../libthpp.so: undefined reference to apache::thrift::protocol::TProtocolException::throwNegativeSize()'
../libthpp.so: undefined reference to double_conversion::StringToDoubleConverter::StringToDouble(char const*, int, int*) const' ../libthpp.so: undefined reference to double_conversion::DoubleToStringConverter::ToShortestIeeeNumber(double, double_conversion::StringBuilder*, double_conversion::DoubleToStringConverter::DtoaMode) const'
../libthpp.so: undefined reference to double_conversion::DoubleToStringConverter::ToExponential(double, int, double_conversion::StringBuilder*) const' ../libthpp.so: undefined reference to double_conversion::DoubleToStringConverter::ToFixed(double, int, double_conversion::StringBuilder*) const'
../libthpp.so: undefined reference to `apache::thrift::protocol::TProtocolException::throwBoolValueOutOfRange(unsigned char)'
collect2: error: ld returned 1 exit status
test/CMakeFiles/storage_test.dir/build.make:104: recipe for target 'test/storage_test' failed
make[2]: *** [test/storage_test] Error 1
CMakeFiles/Makefile2:222: recipe for target 'test/CMakeFiles/storage_test.dir/all' failed
make[1]: *** [test/CMakeFiles/storage_test.dir/all] Error 2
Makefile:138: recipe for target 'all' failed
make: *** [all] Error 2

does anybody can help me ?thanks in advance!

@gbolin
Copy link
Author

gbolin commented Feb 27, 2018

thanks to @Junan007, the problem happened here "Linking CXX executable storage_test".
the test example has some problem, maybe googletest-release-1.7.0 too old for th++ test, so forget the test part, you just need to modify the CMakeLists.txt, switch NO_TESTS from OFF to ON, like the following
OPTION(NO_TESTS "enabling this will disable building tests" ON)
and rebuild the th++,and you will get the libthpp.so file successfully.

@codecolony
Copy link

@githubgs - I set NO_TESTS option and rebuilt thpp completely. I still get this error and for some reason it still tries to run tests.

However, I can see libthpp.so in the folder though. Just make install command fails.
I'm using thpp for crnn and build stage cannot find THPP_LIBRARY. Any guidance in this regard?

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants