Centos6.4下安装protobuf-c问题及解决办法

1、前言

  protobuf是Google提供的结构持久化工具,类型XML,但要比XML更加灵活,效率要高。protobuf当初支持C++、JAVA和Python,后来有了支持C语言的Protobuf-c。关于prorobuf可以参考:https://code.google.com/p/protobuf/https://code.google.com/p/protobuf-c/

2、安装protobuf-c问题

  今天从google官方网站上面下载了protobuf-c,解压进行安装,在执行./configure时候出现错误:

错误提示:protobuf headers are required.

解决办法:安装完整的protobuf,安装在默认的路径。下载完整的protobuf安装,下载地址:https://code.google.com/p/protobuf/downloads/list。网上所示的解决办法如下所示:

https://code.google.com/p/protobuf-c/issues/detail?id=88

https://code.google.com/p/protobuf-c/issues/detail?id=44

安装完protobuf后,再在protobuf-c目录下执行./configure执行成功,但是make时候出现错误:

protoc: error while loading shared libraries: libprotoc.so.8: cannot open shared
错误原因:
protobuf的默认安装路径是/usr/local/lib,而/usr/local/lib 不在Linux体系默认的 LD_LIBRARY_PATH 里,所以就找不到该lib
解决方法:
创建文件 /etc/ld.so.conf.d/libprotobuf.conf 包含内容:

保持退出,然后执行. 输入命令 sudo ldconfig。ldconfig命令参考:http://hi.baidu.com/linuxlife/item/94a6c096a1e4184af0421569

参考:http://blog.csdn.net/xocoder/article/details/9155901

make成功,make install  成功。

测试程序:写一个proto,文件命名为:dmessage.proto ,内容如下:

 

用protoc-c编译生成.h和.c文件如下:protoc-c --c_out=.  dmessage.proto 

posted @   Rabbit_Dale  阅读(4452)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示