mac安装使用protobuf (go)

mac安装使用protobuf (go),第1张

1.使掘清桥用brew安装正哪protoc

查看安装结果

2.编辑protobuf文件

3.生成go文件

如果提示

执行命令判猛:

博主因为公司项目原因,客户端和服务端通信采用了protobuf协议,关于protobuf协议,不明白的自行百度,这个协议因其高效安全性,还是蛮常见的。

博主也是第一次安装使用,定义协议文件时发现不知道如何嵌套定义结构了孝携,摸索。

建议直接参考git上的README

原来缺少老慎轮一个工具libtool,安装:

之后为侍信了保证不出错 ,还需要安装一个工具libsysfs-dev

示例协议文件:

protoc编译出c++的文件

使用时发现:

对于可重复的Layer可以使用add_layers()赋值,但是centrpoint却没有类似set或add的方式赋值。

打开demo.pb.h搜索一下,发现centrpoint只有两个疑似的函数set_allocated_centerpoint()和mutable_centerpoint(),后续查阅发现,这两个函数都能设置centpoint值

两种方式

默认安装步骤(需root权限):

$wget https://github.com/google/protobuf/archive/v2.6.1.zip

$unzip protobuf-2.6.1.zip

$cd protobuf-2.6.1

下载自github的代码需要首先执行 $ ./autogen.sh 生成configure文件

$ ./configure

$ make

$ make check

$ make install

我使用的是centos系统

usr/local/bin

usr/local/lib,

usr/local/include

是也系统默认路径之一,所以到这一步就可以使用protobuf了

$ protoc -I=./ --cpp_out=./ test.proto

到你的test.proto文件所在目录使用命令protoc -I=./ --cpp_out=./斗前 生成C++版本的协议文件

一切OK的话,你回在当前目录看到.h和.cc文件

123456789101112131415161718192021

修改安装路径(非root用户需要修改安装路径):

protobuf默认安装在 /usr/local 目录

你可以修亮激改安装目录通过 ./configure --prefix=命令

虽然我是root用户但觉得默认安装过于分散,所以统一安装在/usr/local/protobuf下

$./configure --prefix=/usr/local/protobuf

$ make

$ make check

$ make install

到此步还没有安装完毕,在/etc/profile 或者用户目录 ~/.bash_profile

添加下面内容

####### add protobuf lib path ########

#(动态库搜索路径) 程序加载运行期间查找动态链接库时指定除了系统默认路径之外的其他路径

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/protobuf/lib/

#(静态库搜索路径) 程序编译期间查找动态链接库时指定查找共享库的路径

export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/protobuf/lib/

#执行程序搜索路径

export PATH=$PATH:/usr/local/protobuf/bin/

#c程序头文件搜索路径

export C_INCLUDE_PATH=$C_INCLUDE_PATH:/usr/local/protobuf/include/

#c++程序头文件搜索空键清路径

export CPLUS_INCLUDE_PATH=$CPLUS_INCLUDE_PATH:/usr/local/protobuf/include/

#pkg-config 路径

export PKG_CONFIG_PATH=/usr/local/protobuf/lib/pkgconfig/

######################################

好了,goog luck


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12511623.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存