在Mac OSX上为i386目标构建Apache Thrift应用程序失败
Failure to build Apache Thrift with my application on Mac OSX for i386 target
我试图用Thrift构建我的C++应用程序,但它失败了。我不明白这个错误。
Ld ./build/Debug/neptune.app/Contents/MacOS/neptune normal i386
cd /Users/orsa/home/projects/neptune/xcode
setenv MACOSX_DEPLOYMENT_TARGET 10.7
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -arch i386 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk -L/Users/orsa/home/projects/neptune/xcode/build/Debug -L/Users/orsa/home/projects/neptune/xcode/../lib -L/usr/local/lib -F/Users/orsa/home/projects/neptune/xcode/build/Debug -F../blocks/Awesomium/build/lib/macosx -filelist /Users/orsa/home/projects/neptune/xcode/./build/neptune.build/Debug/neptune.build/Objects-normal/i386/neptune.LinkFileList -mmacosx-version-min=10.7 -dead_strip ../../../software/Cinder_Github/lib/libcinder_d.a ../blocks/Cairo/lib/macosx/libcairo.a ../blocks/Cairo/lib/macosx/libpixman-1.a ../blocks/Cairo/lib/macosx/libpng14.a ../blocks/OpenCV/lib/macosx/libopencv_calib3d.a ../blocks/OpenCV/lib/macosx/libopencv_contrib.a ../blocks/OpenCV/lib/macosx/libopencv_core.a ../blocks/OpenCV/lib/macosx/libopencv_features2d.a ../blocks/OpenCV/lib/macosx/libopencv_flann.a ../blocks/OpenCV/lib/macosx/libopencv_gpu.a ../blocks/OpenCV/lib/macosx/libopencv_imgproc.a ../blocks/OpenCV/lib/macosx/libopencv_legacy.a ../blocks/OpenCV/lib/macosx/libopencv_ml.a ../blocks/OpenCV/lib/macosx/libopencv_nonfree.a ../blocks/OpenCV/lib/macosx/libopencv_objdetect.a ../blocks/OpenCV/lib/macosx/libopencv_photo.a ../blocks/OpenCV/lib/macosx/libopencv_stitching.a ../blocks/OpenCV/lib/macosx/libopencv_ts.a ../blocks/OpenCV/lib/macosx/libopencv_video.a ../blocks/OpenCV/lib/macosx/libopencv_videostab.a ../blocks/Qhull/libs/macosx/libqhullcpp.a ../blocks/Qhull/libs/macosx/libqhullstatic.a -stdlib=libc++ -lthrift -levent -llibssh2 -framework Cocoa -framework OpenGL -framework CoreVideo -framework QTKit -framework Accelerate -framework AudioToolbox -framework AudioUnit -framework CoreAudio -framework Awesomium -lcrypto -lz -o /Users/orsa/home/projects/neptune/xcode/./build/Debug/neptune.app/Contents/MacOS/neptune
Undefined symbols for architecture i386:
"vtable for apache::thrift::server::TNonblockingServer", referenced from:
apache::thrift::server::TNonblockingServer::TNonblockingServer<apache::thrift::TProcessor>(boost::shared_ptr<apache::thrift::TProcessor> const&, boost::shared_ptr<apache::thrift::protocol::TProtocolFactory> const&, int, boost::shared_ptr<apache::thrift::concurrency::ThreadManager> const&, boost::enable_if<boost::is_convertible<apache::thrift::TProcessor*, apache::thrift::TProcessor*>::type, void*>::type) in neptuneApp-11ADA2EE725CBF5F.o
NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
"apache::thrift::server::TNonblockingServer::setThreadManager(boost::shared_ptr<apache::thrift::concurrency::ThreadManager>)", referenced from:
apache::thrift::server::TNonblockingServer::TNonblockingServer<apache::thrift::TProcessor>(boost::shared_ptr<apache::thrift::TProcessor> const&, boost::shared_ptr<apache::thrift::protocol::TProtocolFactory> const&, int, boost::shared_ptr<apache::thrift::concurrency::ThreadManager> const&, boost::enable_if<boost::is_convertible<apache::thrift::TProcessor*, apache::thrift::TProcessor*>::type, void*>::type) in neptuneApp-11ADA2EE725CBF5F.o
"apache::thrift::server::TNonblockingServer::serve()", referenced from:
NeptuneBrowserApp::startThriftServer() in neptuneApp-11ADA2EE725CBF5F.o
"apache::thrift::server::TNonblockingServer::~TNonblockingServer()", referenced from:
NeptuneBrowserApp::startThriftServer() in neptuneApp-11ADA2EE725CBF5F.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
不是真正的答案,但我建议将其发布在邮件列表上。
相关文章:
- Apache Thrift服务器作为客户端
- Apache Thrift C++服务器超时客户端连接
- Apache Thrift 是否保证数据完整性
- Apache Thrift:终止来自服务器的连接
- 了解Apache Thrift与TCP套接字服务器的特征
- Apache Thrift, Thread Safe TSimpleServer stop() call
- 你能用Apache Thrift代替JNI吗?
- 编译C 应用程序(Apache Thrift)时出错
- 协议缓冲区、Apache Thrift或任何其他数据结构序列化协议中的递归数据结构
- 在Apache Thrift中使用seqid的目的
- Apache Thrift 建立在 VxWorks 之上
- Apache Thrift C++ typedef issue
- Apache Thrift和多个处理程序/处理器
- Apache Thrift:在列表前使用"optional"时,C++服务器似乎没有正确返回它
- Apache Thrift外部事件循环
- 在Mac OSX上为i386目标构建Apache Thrift应用程序失败
- 在Windows下编译Apache Thrift Service
- Apache Thrift与Apache Cordova的结合
- Apache Thrift c++ GlobalOutput输出到哪里?
- Apache Thrift教程中的c++链接器错误-未定义的符号