将协议缓冲库链接到Visual Project

时间:2014-12-10 14:16:46

标签: c++ boost visual-studio-2013 protocol-buffers

我正在尝试将协议缓冲区库链接到我的Visual Studio(Studio Express 2013)项目。但是我收到了error LNK2001: symbole externe non résolu "private: virtual void __thiscall google::protobuf::Message::SetCachedSize(int)const " (?SetCachedSize@Message@protobuf@google@@EBEXH@Z)

等错误的链接

我做了以下事情:

  1. 在发布模式(/ MD)中通过protobuff.sln解决方案构建协议缓冲区库。
  2. 使用extract_includes.bat
  3. 生成协议缓冲区
  4. 将库复制到项目中的lib文件夹
  5. 将包含复制到项目中的包含文件夹
  6. 添加库的路径并包含在我的项目属性中
  7. 使用字符串属性
  8. 创建example.proto
  9. 将example.proto编译为example.pb.h和example.pb.cc
  10. 将这两个文件添加到我项目中的src文件夹
  11. 有关信息:

    • 该项目也包括Boost。我正在使用Asio来管理C ++方面的通信。
    • 我想传输包含double,整数和字符串
    • 数组的消息

    我真的不知道还有什么可以让我的项目链接正确... 如果有人有任何想法,那将非常有帮助。感谢。

    如果我们找不到解决方案,我会尝试将我的对象序列化为JSon(gson for Java,以及C ++方面的手动序列化)。

0 个答案:

没有答案