1

我正在尝试编译其中包含 GFLAGS 的文件。我的编译命令:

g++ -I ../eigen-eigen-b9cd8366d4e8/ -I/caffe_path/distribute/include  my_file.cpp -std=c++0x   -lpthread -lglog -lboost_system -DUSE_OPENCV 

我的错误信息是:

/usr/bin/ld: /tmp/ccv5GAaZ.o: undefined reference to symbol '_ZN6google26ShowUsageWithFlagsRestrictEPKcS1_'
//usr/lib/x86_64-linux-gnu/libgflags.so.2: error adding symbols: DSO missing from command line

这是我第一次与 Gflags 合作。根据互联网上的建议,我尝试在以下行中注释行,#ifndef#endif没有帮助。

#ifndef GFLAGS_GFLAGS_H_
  namespace gflags = google;
#endif

我也尝试了关于这个 线程的建议,但它没有解决任何问题。

4

1 回答 1

1

安装在 caffe 内的 gflags 以某种方式单独引起了冲突。卸载其中任何一个都没有帮助。对我来说,解决方案是卸载(全部)整个 caffe 和 gflags(内部和外部)解决了这个问题。当我确定我的系统上没有 gflags/glogs 和 caffe 的痕迹时,我能够再次安装 caffe。

于 2017-06-14T13:49:28.967 回答