博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
protobuf 测试 & Makefile example
阅读量:4982 次
发布时间:2019-06-12

本文共 1282 字,大约阅读时间需要 4 分钟。

很久没有写C++程序了,很多东西都忘了,几天试了一下protobuf的,顺便写了Makefile:

根据./proto/目录下的addressbook.proto( 内容请参考)生成.cc和.h文件,放到./cpp/proto/目录下

$ protoc -I=./proto/ --cpp_out=./cpp/proto/ ./proto/addressbook.proto

在 ./cpp/ 目录下

$ cd ./cpp

编写reader.cc 和 writer.cc( 内容请参考 )

编写Makefile文件,关于gcc编译过程和makefile中的特殊符号,请参考和

$ cat Makefile LIBS=-lprotobuf CC=gcc ARGS=-Wall -c all:reader writer reader:reader.o addressbook.pb.o         $(CC) $^ $(LIBS) -o $@ writer:writer.o addressbook.pb.o         $(CC) $^ $(LIBS) -o $@ reader.o:reader.cc proto/addressbook.pb.h         $(CC) $(ARGS) $*.cc -o $@ writer.o:writer.cc proto/addressbook.pb.h         $(CC) $(ARGS) $*.cc -o $@ addressbook.pb.o:proto/addressbook.pb.cc proto/addressbook.pb.h         $(CC) $(ARGS) proto/$*.cc -o $@ clean:         rm *.o -f         rm reader writer -f

生成reader和writer程序

$make

测试 writer和reader

$ ./writer address.txtEnter person ID number: 01Enter name: donalEnter email address (blank for none): donal0412@gmail.comEnter a phone number (or leave blank to finish): 88236017Is this a mobile, home, or work phone? workEnter a phone number (or leave blank to finish):
$ ./reader address.txt Person ID: 1  Name: donal  E-mail address: donal0412@gmail.com  Work phone #: 88236017

转载于:https://www.cnblogs.com/Donal/archive/2012/03/08/2385145.html

你可能感兴趣的文章
给标签a加图标
查看>>
Sql 四大排名函数(ROW_NUMBER、RANK、DENSE_RANK、NTILE)(转载)
查看>>
git使用
查看>>
jquery radio取值,checkbox取值,select取值,radio选中,checkbox选中,select选中,及其相关...
查看>>
错误状态码URL重定向
查看>>
离线安装mysql数据库
查看>>
利用R进行多元线性回归分析
查看>>
loj 558 我们的 CPU 遭到攻击
查看>>
Linux 搭建互信后,仍需要密码验证
查看>>
postgresql+postgis+pgrouting实现最短路径查询(3)--流程图
查看>>
[转]LINQ To SQL 语法及实例大全
查看>>
使用 Python 可以做什么?
查看>>
[LeetCode] Valid Palindrome
查看>>
[LeetCode] Longest Palindromic Substring
查看>>
一个请求
查看>>
map和reduce方法理解
查看>>
php调接口
查看>>
Delphi 实现多窗口任务栏显示图标《转》
查看>>
sql异常与函数
查看>>
Jquery Table 的基本操作
查看>>