C++ 在MinGW中安装Protobuf开发库

C++ 在MinGW中安装Protobuf开发库,c++,mingw,protocol-buffers,C++,Mingw,Protocol Buffers,我从github上的源代码在MinGW中安装了Protobuf 当我尝试编译我的C++程序时,我得到了错误: CMakeFiles/nxcore_interface.dir/main.cpp.o:main.cpp:(.rdata$.refptr._ZN6google8protobuf8internal13empty_string_E[.refptr._ZN6google8protobuf8internal13empty_string_E]+0x0): undefined reference to

我从github上的源代码在MinGW中安装了Protobuf

当我尝试编译我的C++程序时,我得到了错误:

CMakeFiles/nxcore_interface.dir/main.cpp.o:main.cpp:(.rdata$.refptr._ZN6google8protobuf8internal13empty_string_E[.refptr._ZN6google8protobuf8internal13empty_string_E]+0x0): undefined reference to `google::protobuf::internal::empty_string_'
collect2: error: ld returned 1 exit status
我发现一些东西表明开发库不存在:

我已经包含了
-lprotobuf
编译器标志

经过一些搜索之后,我决定使用
libprotobuf dev
,但我在查找它时遇到了问题


是否有人知道从哪里获取它,或者是否有其他错误?

您应该使用pkg config编译应用程序

g++ my_program.cpp `pkg-config --cflags --libs protobuf`
如果您没有pkg配置,您应该找到库路径并使用-L选项设置它们。例如:

g++ my_program.cpp -L/usr/local/protobuf/lib -lprotobuf

我的库位于
/usr/local/lib
中,我尝试使用
-L/usr/local/lib
但出现了相同的错误。如果您知道如何在CMake中执行此操作,也会有所帮助。