您当前的位置: 首页 > 
  • 0浏览

    0关注

    483博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

使用protobuf_example_addressbook.proto项目时的问题:PROTOBUF_USE_DLLS

高精度计算机视觉 发布时间:2022-05-22 12:57:39 ,浏览量:0

有一段时间没有用到protobuf了,长时间不用,都忘光了;所以重新弄一下addressbook.proto。没想碰到一堆老问题,一时没想起来,花了1个多小时,所以特别备注一下,提醒别再踏坑。

源码还是那两个,

D:\vsNCNN\protobuf391\examples\add_person.cc

D:\vsNCNN\protobuf391\examples\list_people.cc

然后,版本要一致,发现用官方的生成文件会有一大堆错误,我最后用了自己编译的文件。

cd  D:\vsNCNN\protobuf391_example protoc -I=.   --cpp_out=.   addressbook.proto

cd  D:\vsNCNN\protobuf391_example\google\protobuf protoc -I=.   --cpp_out=.   timestamp.proto

timestamp这一步不是必须的,但可以看出我把那个timestamp.proto移到addressbook.proto的相对路径下了,避免protoc找不到。

然后新建一个vs2019的工程,开始再跑一次,然后就发现一个问题: fixed_address_empty_string;" · Issue #2502 · protocolbuffers/protobuf · GitHub">can not find " extend ExplicitlyConstructed< ::std::string> fixed_address_empty_string;" · Issue #2502 · protocolbuffers/protobuf · GitHub

error LNK2001: class google::protobuf::internal::ExplicitlyConstructed google::protobuf::internal::fixed_address_empty_string"

看了一下,我以前编译的项目用的是DLL的方式,所以自己赶紧在项目的设置里添加了PROTOBUF_USE_DLLS这个预定义,然后问题就解决了。

本文结束。

关注
打赏
1661664439
查看更多评论
立即登录/注册

微信扫码登录

0.1122s