Google 在 Windows 中使用 MinGW 的协议缓冲区

Google protocol buffers using MinGW in Windows

我正尝试在 Windows 上使用 Qt 中的 google 协议缓冲区。因此,我使用 MingGW 的 msys 从 github 编译了 protobuf 源代码。 proto-compiler (protoc) 似乎工作正常,但不幸的是,它无法使用 Qt 环境中生成的 .ph.h 和 .pb.cc 文件。

将此添加到我的 .pro 文件中:

LIBS += "C:/MinGW/msys/1.0/bin/libprotobuf-10.dll"
INCLUDEPATH += "C:/MinGW/msys/1.0/include/"

但是当我尝试编译它时,我仍然得到 "undefined reference to ..." class 所有使用的方法。

代码必须正确,因为它在使用 protoc 和 Qt 的 linux 机器上运行得很好。它必须是我包含 .dll 的方式,或者我包含一个错误的,因为 headers 似乎可以很好地解决。 根据这个post选择要包含的dll: http://www.ptrackapp.com/apclassys-notes/building-google-protocol/

我在这里有点迷路,希望能得到任何帮助。

提前致谢。

终于弄明白了,通过使用以下配置前缀:

./configure --prefix=`cd /mingw; pwd -W`

找到解决方案here