0

我已经交叉编译了一个要在 openwrt 平台上运行的客户端服务器程序,我使用了 protoc 版本 2.6.1 来生成 .pb.h 和 .pb.cc 文件。

我已经安装了用于交叉编译的 protobuf 包, 在编译时将已编译的 protobuf 库链接到源代码。

但是当我尝试在 openwrt VM 上运行可执行文件(混乱平静)时,它给了我以下错误。

符号“_ZN6google8protobuf8internal13empty_string_B5cxx11E”:无法解析库“./opwenwrt-client”中的符号

错误图像

我可以猜测链接库之间存在不匹配。但我不明白我在哪里都使用 protobuf 版本 2.1.6。

任何形式的帮助将不胜感激。

4

1 回答 1

1

这看起来可能是由于使用不同的编译器/C++ ABI 来编译您的应用程序而不是 libprotobuf.so。有关更多信息,请参阅上一个问题:

对 google::protobuf::internal::empty_string_[abi:cxx11] 的未定义引用

于 2016-06-23T19:56:00.690 回答