-
Notifications
You must be signed in to change notification settings - Fork 48
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
charybdefs make fails #29
Comments
git revert 1a04698 |
Even with the latest change/revert it is now working, I am using thrift version 0.9.1.Below are the errors which I am seeing Request you help me in resolving this issue /root/a_e/charybdefs/server.cc: In function 'void server_thread()': |
Appreciate, if you can provide the fix/solution to above problem |
I am finding that CMakeLists.txt fails because the server_constants fails to be generated |
Please help me in resolving this issue, I tried on atleast 10 machines(all centos7) but make always fails
[ 0%] Built target thrift
Scanning dependencies of target charybde_lib
[ 16%] Building CXX object CMakeFiles/charybde_lib.dir/charybde_ops.cc.o
[ 33%] Building CXX object CMakeFiles/charybde_lib.dir/server.cc.o
Linking CXX static library libcharybde_lib.a
[ 33%] Built target charybde_lib
Scanning dependencies of target server
[ 50%] Building CXX object CMakeFiles/server.dir/gen-cpp/server.cpp.o
Linking CXX static library libserver.a
[ 50%] Built target server
Scanning dependencies of target charybdefs
[ 66%] Building C object CMakeFiles/charybdefs.dir/charybdefs.c.o
Linking CXX executable charybdefs
libcharybde_lib.a(server.cc.o): In function
server_thread()': server.cc:(.text+0x1ee2): undefined reference to
apache::thrift::server::TSimpleServer::TSimpleServer(std::shared_ptrapache::thrift::TProcessor const&, std::shared_ptrapache::thrift::transport::TServerTransport const&, std::shared_ptrapache::thrift::transport::TTransportFactory const&, std::shared_ptrapache::thrift::protocol::TProtocolFactory const&)'server.cc:(.text+0x1f0d): undefined reference to
apache::thrift::server::TServerFramework::serve()' libcharybde_lib.a(server.cc.o): In function
apache::thrift::protocol::TProtocolFactory::TProtocolFactory()':server.cc:(.text._ZN6apache6thrift8protocol16TProtocolFactoryC2Ev[_ZN6apache6thrift8protocol16TProtocolFactoryC5Ev]+0xf): undefined reference to
vtable for apache::thrift::protocol::TProtocolFactory' libcharybde_lib.a(server.cc.o): In function
apache::thrift::protocol::TBinaryProtocolFactoryT<apache::thrift::transport::TTransport, apache::thrift::protocol::TNetworkBigEndian>::~TBinaryProtocolFactoryT()':server.cc:(.text._ZN6apache6thrift8protocol23TBinaryProtocolFactoryTINS0_9transport10TTransportENS1_17TNetworkBigEndianEED2Ev[_ZN6apache6thrift8protocol23TBinaryProtocolFactoryTINS0_9transport10TTransportENS1_17TNetworkBigEndianEED5Ev]+0x1f): undefined reference to
apache::thrift::protocol::TProtocolFactory::~TProtocolFactory()' libcharybde_lib.a(server.cc.o):(.rodata._ZTIN6apache6thrift8protocol23TBinaryProtocolFactoryTINS0_9transport10TTransportENS1_17TNetworkBigEndianEEE[_ZTIN6apache6thrift8protocol23TBinaryProtocolFactoryTINS0_9transport10TTransportENS1_17TNetworkBigEndianEEE]+0x10): undefined reference to
typeinfo for apache::thrift::protocol::TProtocolFactory'libserver.a(server.cpp.o): In function
serverConcurrentClient::send_get_methods()': server.cpp:(.text+0x756f): undefined reference to
apache::thrift::async::TConcurrentClientSyncInfo::generateSeqId()'server.cpp:(.text+0x7594): undefined reference to
apache::thrift::async::TConcurrentSendSentry::TConcurrentSendSentry(apache::thrift::async::TConcurrentClientSyncInfo*)' server.cpp:(.text+0x76a2): undefined reference to
apache::thrift::async::TConcurrentSendSentry::commit()'server.cpp:(.text+0x76bd): undefined reference to
apache::thrift::async::TConcurrentSendSentry::~TConcurrentSendSentry()' server.cpp:(.text+0x7720): undefined reference to
apache::thrift::async::TConcurrentSendSentry::~TConcurrentSendSentry()'libserver.a(server.cpp.o): In function
serverConcurrentClient::recv_get_methods(std::vector<std::string, std::allocator<std::string> >&, int)': server.cpp:(.text+0x7795): undefined reference to
apache::thrift::async::TConcurrentRecvSentry::TConcurrentRecvSentry(apache::thrift::async::TConcurrentClientSyncInfo*, int)'server.cpp:(.text+0x77bc): undefined reference to
apache::thrift::async::TConcurrentClientSyncInfo::getPending(std::string&, apache::thrift::protocol::TMessageType&, int&)' server.cpp:(.text+0x788c): undefined reference to
apache::thrift::async::TConcurrentRecvSentry::commit()'server.cpp:(.text+0x7a92): undefined reference to
apache::thrift::async::TConcurrentRecvSentry::commit()' server.cpp:(.text+0x7b1e): undefined reference to
apache::thrift::async::TConcurrentRecvSentry::~TConcurrentRecvSentry()'server.cpp:(.text+0x7b5a): undefined reference to
apache::thrift::async::TConcurrentClientSyncInfo::updatePending(std::string const&, apache::thrift::protocol::TMessageType, int)' server.cpp:(.text+0x7b7d): undefined reference to
apache::thrift::async::TConcurrentClientSyncInfo::waitForWork(int)'server.cpp:(.text+0x7c50): undefined reference to
apache::thrift::async::TConcurrentRecvSentry::~TConcurrentRecvSentry()' libserver.a(server.cpp.o): In function
serverConcurrentClient::send_clear_all_faults()':server.cpp:(.text+0x7cd5): undefined reference to
apache::thrift::async::TConcurrentClientSyncInfo::generateSeqId()' server.cpp:(.text+0x7cfa): undefined reference to
apache::thrift::async::TConcurrentSendSentry::TConcurrentSendSentry(apache::thrift::async::TConcurrentClientSyncInfo*)'server.cpp:(.text+0x7e08): undefined reference to
apache::thrift::async::TConcurrentSendSentry::commit()' server.cpp:(.text+0x7e23): undefined reference to
apache::thrift::async::TConcurrentSendSentry::~TConcurrentSendSentry()'server.cpp:(.text+0x7e86): undefined reference to
apache::thrift::async::TConcurrentSendSentry::~TConcurrentSendSentry()' libserver.a(server.cpp.o): In function
serverConcurrentClient::recv_clear_all_faults(int)':server.cpp:(.text+0x7ef1): undefined reference to
apache::thrift::async::TConcurrentRecvSentry::TConcurrentRecvSentry(apache::thrift::async::TConcurrentClientSyncInfo*, int)' server.cpp:(.text+0x7f18): undefined reference to
apache::thrift::async::TConcurrentClientSyncInfo::getPending(std::string&, apache::thrift::protocol::TMessageType&, int&)'server.cpp:(.text+0x7fe5): undefined reference to
apache::thrift::async::TConcurrentRecvSentry::commit()' server.cpp:(.text+0x81c8): undefined reference to
apache::thrift::async::TConcurrentRecvSentry::commit()'server.cpp:(.text+0x81e4): undefined reference to
apache::thrift::async::TConcurrentRecvSentry::~TConcurrentRecvSentry()' server.cpp:(.text+0x8220): undefined reference to
apache::thrift::async::TConcurrentClientSyncInfo::updatePending(std::string const&, apache::thrift::protocol::TMessageType, int)'server.cpp:(.text+0x8243): undefined reference to
apache::thrift::async::TConcurrentClientSyncInfo::waitForWork(int)' server.cpp:(.text+0x82e3): undefined reference to
apache::thrift::async::TConcurrentRecvSentry::~TConcurrentRecvSentry()'libserver.a(server.cpp.o): In function
serverConcurrentClient::send_clear_fault(std::string const&)': server.cpp:(.text+0x8377): undefined reference to
apache::thrift::async::TConcurrentClientSyncInfo::generateSeqId()'server.cpp:(.text+0x839c): undefined reference to
apache::thrift::async::TConcurrentSendSentry::TConcurrentSendSentry(apache::thrift::async::TConcurrentClientSyncInfo*)' server.cpp:(.text+0x84b6): undefined reference to
apache::thrift::async::TConcurrentSendSentry::commit()'server.cpp:(.text+0x84d1): undefined reference to
apache::thrift::async::TConcurrentSendSentry::~TConcurrentSendSentry()' server.cpp:(.text+0x8534): undefined reference to
apache::thrift::async::TConcurrentSendSentry::~TConcurrentSendSentry()'libserver.a(server.cpp.o): In function
serverConcurrentClient::recv_clear_fault(int)': server.cpp:(.text+0x859f): undefined reference to
apache::thrift::async::TConcurrentRecvSentry::TConcurrentRecvSentry(apache::thrift::async::TConcurrentClientSyncInfo*, int)'server.cpp:(.text+0x85c6): undefined reference to
apache::thrift::async::TConcurrentClientSyncInfo::getPending(std::string&, apache::thrift::protocol::TMessageType&, int&)' server.cpp:(.text+0x8693): undefined reference to
apache::thrift::async::TConcurrentRecvSentry::commit()'server.cpp:(.text+0x8876): undefined reference to
apache::thrift::async::TConcurrentRecvSentry::commit()' server.cpp:(.text+0x8892): undefined reference to
apache::thrift::async::TConcurrentRecvSentry::~TConcurrentRecvSentry()'server.cpp:(.text+0x88ce): undefined reference to
apache::thrift::async::TConcurrentClientSyncInfo::updatePending(std::string const&, apache::thrift::protocol::TMessageType, int)' server.cpp:(.text+0x88f1): undefined reference to
apache::thrift::async::TConcurrentClientSyncInfo::waitForWork(int)'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
libserver.a(server.cpp.o): In function
serverConcurrentClient::send_set_fault(std::vector<std::string, std::allocator<std::string> > const&, bool, int, int, std::string const&, bool, int, bool)': server.cpp:(.text+0x8aa7): undefined reference to
apache::thrift::async::TConcurrentClientSyncInfo::generateSeqId()'server.cpp:(.text+0x8acf): undefined reference to
apache::thrift::async::TConcurrentSendSentry::TConcurrentSendSentry(apache::thrift::async::TConcurrentClientSyncInfo*)' server.cpp:(.text+0x8c5a): undefined reference to
apache::thrift::async::TConcurrentSendSentry::commit()'server.cpp:(.text+0x8c78): undefined reference to
apache::thrift::async::TConcurrentSendSentry::~TConcurrentSendSentry()' server.cpp:(.text+0x8cde): undefined reference to
apache::thrift::async::TConcurrentSendSentry::~TConcurrentSendSentry()'libserver.a(server.cpp.o): In function
serverConcurrentClient::recv_set_fault(int)': server.cpp:(.text+0x8d4d): undefined reference to
apache::thrift::async::TConcurrentRecvSentry::TConcurrentRecvSentry(apache::thrift::async::TConcurrentClientSyncInfo*, int)'server.cpp:(.text+0x8d74): undefined reference to
apache::thrift::async::TConcurrentClientSyncInfo::getPending(std::string&, apache::thrift::protocol::TMessageType&, int&)' server.cpp:(.text+0x8e41): undefined reference to
apache::thrift::async::TConcurrentRecvSentry::commit()'server.cpp:(.text+0x9024): undefined reference to
apache::thrift::async::TConcurrentRecvSentry::commit()' server.cpp:(.text+0x9040): undefined reference to
apache::thrift::async::TConcurrentRecvSentry::~TConcurrentRecvSentry()'server.cpp:(.text+0x907c): undefined reference to
apache::thrift::async::TConcurrentClientSyncInfo::updatePending(std::string const&, apache::thrift::protocol::TMessageType, int)' server.cpp:(.text+0x909f): undefined reference to
apache::thrift::async::TConcurrentClientSyncInfo::waitForWork(int)'server.cpp:(.text+0x913f): undefined reference to
apache::thrift::async::TConcurrentRecvSentry::~TConcurrentRecvSentry()' libserver.a(server.cpp.o): In function
serverConcurrentClient::send_set_all_fault(bool, int, int, std::string const&, bool, int, bool)':server.cpp:(.text+0x9237): undefined reference to
apache::thrift::async::TConcurrentClientSyncInfo::generateSeqId()' server.cpp:(.text+0x925f): undefined reference to
apache::thrift::async::TConcurrentSendSentry::TConcurrentSendSentry(apache::thrift::async::TConcurrentClientSyncInfo*)'server.cpp:(.text+0x93d9): undefined reference to
apache::thrift::async::TConcurrentSendSentry::commit()' server.cpp:(.text+0x93f7): undefined reference to
apache::thrift::async::TConcurrentSendSentry::~TConcurrentSendSentry()'server.cpp:(.text+0x945d): undefined reference to
apache::thrift::async::TConcurrentSendSentry::~TConcurrentSendSentry()' libserver.a(server.cpp.o): In function
serverConcurrentClient::recv_set_all_fault(int)':server.cpp:(.text+0x94cb): undefined reference to
apache::thrift::async::TConcurrentRecvSentry::TConcurrentRecvSentry(apache::thrift::async::TConcurrentClientSyncInfo*, int)' server.cpp:(.text+0x94f2): undefined reference to
apache::thrift::async::TConcurrentClientSyncInfo::getPending(std::string&, apache::thrift::protocol::TMessageType&, int&)'server.cpp:(.text+0x95bf): undefined reference to
apache::thrift::async::TConcurrentRecvSentry::commit()' server.cpp:(.text+0x97a2): undefined reference to
apache::thrift::async::TConcurrentRecvSentry::commit()'server.cpp:(.text+0x97be): undefined reference to
apache::thrift::async::TConcurrentRecvSentry::~TConcurrentRecvSentry()' server.cpp:(.text+0x97fa): undefined reference to
apache::thrift::async::TConcurrentClientSyncInfo::updatePending(std::string const&, apache::thrift::protocol::TMessageType, int)'server.cpp:(.text+0x981d): undefined reference to
apache::thrift::async::TConcurrentClientSyncInfo::waitForWork(int)' server.cpp:(.text+0x98bd): undefined reference to
apache::thrift::async::TConcurrentRecvSentry::~TConcurrentRecvSentry()'collect2: error: ld returned 1 exit status
make[2]: *** [charybdefs] Error 1
make[1]: *** [CMakeFiles/charybdefs.dir/all] Error 2
make: *** [all] Error 2
[root@s82605-cnt7 charybdefs]#
error on another machine:
Scanning dependencies of target charybde_lib
[ 16%] Building CXX object CMakeFiles/charybde_lib.dir/charybde_ops.cc.o
[ 33%] Building CXX object CMakeFiles/charybde_lib.dir/server.cc.o
In file included from /root/an/charybdefs/server.cc:35:0:
/root/an/charybdefs/gen-cpp/server.h:684:53: error: invalid covariant return type for 'virtual std::shared_ptrapache::thrift::TProcessor serverProcessorFactory::getProcessor(const apache::thrift::TConnectionInfo&)'
::std::shared_ptr< ::apache::thrift::TProcessor > getProcessor(const ::apache::thrift::TConnectionInfo& connInfo) override;
^
In file included from /usr/include/thrift/server/TServer.h:23:0,
from /usr/include/thrift/server/TSimpleServer.h:23,
from /root/an/charybdefs/server.cc:31:
/usr/include/thrift/TProcessor.h:214:41: error: overriding 'virtual boost::shared_ptrapache::thrift::TProcessor apache::thrift::TProcessorFactory::getProcessor(const apache::thrift::TConnectionInfo&)'
virtual boost::shared_ptr getProcessor(
^
/root/an/charybdefs/server.cc: In function 'void server_thread()':
/root/an/charybdefs/server.cc:265:91: error: no matching function for call to 'apache::thrift::server::TSimpleServer::TSimpleServer(std::shared_ptrapache::thrift::TProcessor&, std::shared_ptrapache::thrift::transport::TServerTransport&, std::shared_ptrapache::thrift::transport::TTransportFactory&, std::shared_ptrapache::thrift::protocol::TProtocolFactory&)'
TSimpleServer server(processor, serverTransport, transportFactory, protocolFactory);
^
/root/an/charybdefs/server.cc:265:91: note: candidates are:
In file included from /root/an/charybdefs/server.cc:31:0:
/usr/include/thrift/server/TSimpleServer.h:73:3: note: template apache::thrift::server::TSimpleServer::TSimpleServer(const boost::shared_ptr&, const boost::shared_ptrapache::thrift::transport::TServerTransport&, const boost::shared_ptrapache::thrift::transport::TTransportFactory&, const boost::shared_ptrapache::thrift::transport::TTransportFactory&, const boost::shared_ptrapache::thrift::protocol::TProtocolFactory&, const boost::shared_ptrapache::thrift::protocol::TProtocolFactory&, typename boost::enable_if<typename boost::is_convertible<Processor*, apache::thrift::TProcessor*>::type, void*>::type)
TSimpleServer(
^
/usr/include/thrift/server/TSimpleServer.h:73:3: note: template argument deduction/substitution failed:
/root/an/charybdefs/server.cc:265:91: note: 'std::shared_ptrapache::thrift::TProcessor' is not derived from 'const boost::shared_ptr'
TSimpleServer server(processor, serverTransport, transportFactory, protocolFactory);
^
In file included from /root/an/charybdefs/server.cc:31:0:
/usr/include/thrift/server/TSimpleServer.h:59:3: note: template apache::thrift::server::TSimpleServer::TSimpleServer(const boost::shared_ptr&, const boost::shared_ptrapache::thrift::transport::TServerTransport&, const boost::shared_ptrapache::thrift::transport::TTransportFactory&, const boost::shared_ptrapache::thrift::transport::TTransportFactory&, const boost::shared_ptrapache::thrift::protocol::TProtocolFactory&, const boost::shared_ptrapache::thrift::protocol::TProtocolFactory&, typename boost::enable_if<typename boost::is_convertible<ProcessorFactory*, apache::thrift::TProcessorFactory*>::type, void*>::type)
TSimpleServer(
^
/usr/include/thrift/server/TSimpleServer.h:59:3: note: template argument deduction/substitution failed:
/root/an/charybdefs/server.cc:265:91: note: 'std::shared_ptrapache::thrift::TProcessor' is not derived from 'const boost::shared_ptr'
TSimpleServer server(processor, serverTransport, transportFactory, protocolFactory);
^
In file included from /root/an/charybdefs/server.cc:31:0:
/usr/include/thrift/server/TSimpleServer.h:49:3: note: template apache::thrift::server::TSimpleServer::TSimpleServer(const boost::shared_ptr&, const boost::shared_ptrapache::thrift::transport::TServerTransport&, const boost::shared_ptrapache::thrift::transport::TTransportFactory&, const boost::shared_ptrapache::thrift::protocol::TProtocolFactory&, typename boost::enable_if<typename boost::is_convertible<Processor*, apache::thrift::TProcessor*>::type, void*>::type)
TSimpleServer(
^
/usr/include/thrift/server/TSimpleServer.h:49:3: note: template argument deduction/substitution failed:
/root/an/charybdefs/server.cc:265:91: note: 'std::shared_ptrapache::thrift::TProcessor' is not derived from 'const boost::shared_ptr'
TSimpleServer server(processor, serverTransport, transportFactory, protocolFactory);
^
In file included from /root/an/charybdefs/server.cc:31:0:
/usr/include/thrift/server/TSimpleServer.h:38:3: note: template apache::thrift::server::TSimpleServer::TSimpleServer(const boost::shared_ptr&, const boost::shared_ptrapache::thrift::transport::TServerTransport&, const boost::shared_ptrapache::thrift::transport::TTransportFactory&, const boost::shared_ptrapache::thrift::protocol::TProtocolFactory&, typename boost::enable_if<typename boost::is_convertible<ProcessorFactory*, apache::thrift::TProcessorFactory*>::type, void*>::type)
TSimpleServer(
^
/usr/include/thrift/server/TSimpleServer.h:38:3: note: template argument deduction/substitution failed:
/root/an/charybdefs/server.cc:265:91: note: 'std::shared_ptrapache::thrift::TProcessor' is not derived from 'const boost::shared_ptr'
TSimpleServer server(processor, serverTransport, transportFactory, protocolFactory);
^
In file included from /root/an/charybdefs/server.cc:31:0:
/usr/include/thrift/server/TSimpleServer.h:35:7: note: apache::thrift::server::TSimpleServer::TSimpleServer(const apache::thrift::server::TSimpleServer&)
class TSimpleServer : public TServer {
^
/usr/include/thrift/server/TSimpleServer.h:35:7: note: candidate expects 1 argument, 4 provided
make[2]: *** [CMakeFiles/charybde_lib.dir/server.cc.o] Error 1
make[1]: *** [CMakeFiles/charybde_lib.dir/all] Error 2
make: *** [all] Error 2
The text was updated successfully, but these errors were encountered: