- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试让 Protobuf 库在 Android 中的 Java 和 JNI 层之间进行通信。我从 here 获得源代码指导.所以我将其添加为 Jni>Source_Sirectory 中的源文件。现在,如果我执行 ndk-build 生成 .so 文件,那么它会提示以下错误日志:
[armeabi] SharedLibrary : libprotobuf-lite.so
jni/src/google/protobuf/stubs/common.cc:201: error: undefined reference to 'google::protobuf::util::Status::ToString() const'
jni/src/google/protobuf/stubs/common.cc:207: error: undefined reference to 'google::protobuf::operator<<(std::ostream&, google::protobuf::uint128 const&)'
jni/src/google/protobuf/arena.h:622: error: undefined reference to 'google::protobuf::Arena::AllocateAligned(std::type_info const*, unsigned int)'
jni/src/google/protobuf/arena.h:624: error: undefined reference to 'google::protobuf::Arena::AddListNode(void*, void (*)(void*))'
jni/src/google/protobuf/arena.h:462: error: undefined reference to 'google::protobuf::Arena::AddListNode(void*, void (*)(void*))'
jni/src/google/protobuf/arena.h:617: error: undefined reference to 'google::protobuf::Arena::AllocateAligned(std::type_info const*, unsigned int)'
jni/src/google/protobuf/arena.h:617: error: undefined reference to 'google::protobuf::Arena::AllocateAligned(std::type_info const*, unsigned int)'
jni/src/google/protobuf/arena.h:617: error: undefined reference to 'google::protobuf::Arena::AllocateAligned(std::type_info const*, unsigned int)'
jni/src/google/protobuf/arena.h:633: error: undefined reference to 'google::protobuf::Arena::AddListNode(void*, void (*)(void*))'
jni/src/google/protobuf/arena.h:624: error: undefined reference to 'google::protobuf::Arena::AddListNode(void*, void (*)(void*))'
jni/src/google/protobuf/wire_format_lite.cc:514: error: undefined reference to 'google::protobuf::internal::IsStructurallyValidUTF8(char const*, int)'
jni/src/google/protobuf/wire_format_lite.cc:527: error: undefined reference to 'google::protobuf::StringPrintf(char const*, ...)'
collect2: error: ld returned 1 exit status
如果我遗漏了什么,有什么建议吗?
最佳答案
Proto buffer 生成的 c/c++ 代码依赖于 google 的支持代码,它与 proto buffer 编译器一起安装。这意味着您获得的所有 c/c++ 都依赖于 protobuf 的支持代码,这就是为什么您会收到链接错误的原因 - 显然您在生成共享对象时没有将 google 的 proto 缓冲区支持库与其他链接资源链接在一起。
我为 JNI .so 库创建了一个 eclipse 构建,我在其中向链接器添加了一个 -lprotobuf 标志,如图所示 here(搜索 makefile,然后滚动到链接器部分)。希望对您有所帮助。
关于java - 如何构建 libprotobuf-lite.so,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32688089/
我错误地删除了这些库。我找不到正确的方法来重新安装它。 /usr/lib/x86_64-linux-gnu/libprotobuf.so.8 /usr/lib/x86_64-linux-gnu/lib
我正在尝试让 Protobuf 库在 Android 中的 Java 和 JNI 层之间进行通信。我从 here 获得源代码指导.所以我将其添加为 Jni>Source_Sirectory 中的源文件
我在项目中编译了自己的 protobuf(在主要目标中,而不是 lib),但我发现了一个崩溃,这是由 libprotobuf.dylib 中的 protobuf 代码引起的(我猜这是新包含的 lib设
我有一个使用 Protocol Buffer 的项目,它在 linux 和 windows 上运行良好,但在 mac os 上运行程序时出现以下错误。我确认我使用的是正确的库。我使用 brew ins
我下载了 protocolbuffer-2.5.0.zip 文件,然后我按照 Readme.txt 安装: ./configure make make check make install 在命令 m
我已经安装了一个名为 remy 的基于 C++ 的软件,它使用 libprotoc。当我运行该工具时,我收到以下错误,提示安装的 Protocol Buffer 版本,即使我安装了正确的版本。有人可以
您好,我是 DNN 的新手,我正在 Windows 7 上试用 Caffe。我已经成功编译了 Caffe,还制作了 CIFAR10 和 mean.binaryproto 文件的训练和测试 leveld
我尝试使用此查询从我的几何表中获取 MVT 格式 SELECT ST_AsMVT(q) FROM ( SELECT id_kelurahan,
我正在尝试在 conda 环境中安装 caffe。 Caffe 需要 Google 的 protobuf 包。我已经有了 git clone 的 protobuf 并将其放在我的\usr 目录中。但是
我正在使用 protobuf-c来自 GitHub。当我运行 make 时发生此错误。 $ git clone https://github.com/protobuf-c/protobuf-c.git
我真的很喜欢mosh(http://mosh.mit.edu/),但是在brew upgrade之后,它停止工作,并产生以下错误。 > mosh example.com dyld: Library n
我正在尝试为 mbed 平台构建 libprotobuf-c,但在 ./configure 设置方面遇到了一些问题。我想我需要更多的编译标志,但不确定要包括什么。任何帮助将非常感激。谢谢! ./con
我是一名优秀的程序员,十分优秀!