linux下编译protobuf,可以编译成pb.go

 1 编译前需要安装gtest
 2 
 3 $ cd googletest
 4 $ cmake -DBUILD_SHARED_LIBS=ON .
 5 $ make
 6 $ sudo cp -a include/gtest /home/xxx/opt/gtest1.8.0/include
 7 $ sudo cp -a libgtest_main.so libgtest.so /home/xxx/gtest1.8.0/lib/
 8 
 9 作者:zishuai
10 链接:https://www.jianshu.com/p/e768105e901d
11 来源:简书
12 简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
参考 :https://blog.csdn.net/xiexievv/article/details/47396725

推荐这篇超级齐全的:https://studygolang.com/articles/9786

 

下载代码 : git clone https://github.com/google/protobuf

进入目录 : cd prootbuf

  ./autogen.sh

     $ ./configure --prefix=<安装路径>

     $ make

      $ make check

      $ make install

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

添加下面内容

####### 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/

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

---------------------

作者:jackytse_

来源:CSDN

原文:https://blog.csdn.net/xiexievv/article/details/47396725

版权声明:本文为博主原创文章,转载请附上博文链接!

然后添加编译成golang的插件

获取 goprotobuf 提供的 Protobuf 编译器插件 protoc-gen-go
编译好的插件要放置于 GOPATH/bin下,GOPATH/bin下,GOPATH/bin 应该被加入 PATH 环境变量,以便 protoc 能够找到 protoc-gen-go

go get github.com/golang/protobuf/protoc-gen-go
//进入下载好的目录 对应github.com/golang/protobuf/protoc-gen-go
go build
go install

原文: https://blog.csdn.net/yanerhao/article/details/84437359