brpc例子编译失败

bayes
  • 40

在brpc例子example/parallel_echo_c++中,使用make编译的时候,在链接时报错如下:

> Linking echo_server
g++ -L/usr/lib64 -L../../output/lib -Xlinker "-(" echo.pb.o server.o -Wl,-Bstatic  -lbrpc -Wl,-Bdynamic -Xlinker "-)" -lpthread -lssl -lcrypto -ldl -lz -lrt -lgflags -lprotobuf -lleveldb -lthriftnb -levent -lthrift -ltcmalloc_and_profiler -lglog -o echo_server
../../output/lib/libbrpc.a(server.o): In function `brpc::Server::StartInternal(in_addr const&, brpc::PortRange const&, brpc::ServerOptions const*)':
/home/tom/local/brpc/incubator-brpc/src/brpc/server.cpp:813: undefined reference to `__cxa_throw_bad_array_new_length'
../../output/lib/libbrpc.a(ssl_helper.o): In function `_M_check':
/usr/local/gcc4.9.2/include/c++/4.9.2/bits/basic_string.h:324: undefined reference to `std::__throw_out_of_range_fmt(char const*, ...)'

但是将链接命令g++ -L/usr/lib64 -L../../output/lib -Xlinker "-(" echo.pb.o server.o -Wl,-Bstatic  -lbrpc -Wl,-Bdynamic -Xlinker "-)" -lpthread -lssl -lcrypto -ldl -lz -lrt -lgflags -lprotobuf -lleveldb -lthriftnb -levent -lthrift -ltcmalloc_and_profiler -lglog -o echo_server
中的g++改为gcc则可以编译成功。

想请教原因在哪里呢?非常感谢!

回复
阅读 1.2k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏