在MinGW中安装Protobuf开发库

时间:2015-07-26 07:51:15

标签: c++ mingw protocol-buffers

我从github上的来源安装了MinGW中的Protobuf。

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

holder.addDateButton = (Button) findViewById(R.id.add_date_button_id); 

我发现了一些表明开发库不存在的东西:

Program with protocol-buffers don't compile with MinGW-w64: "undefined reference to google::protobuf:: ..."

我已经包含了holder.addDateButton = (Button) view.findViewById(R.id.add_date_button_id); 编译器标志。

经过一番搜索,我确定我需要使用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 ,但我无法找到它。

有谁知道从哪里得到它,或者是其他错误?

1 个答案:

答案 0 :(得分:1)

您应该使用pkg-config编译您的应用程序。

g++ my_program.cpp `pkg-config --cflags --libs protobuf`

如果您没有pkg-config,则应找到库路径并使用-L选项设置它们。例如:

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