【解决】ceres问题 error adding symbols: DSO missing from command line

问题描述
我在qt下使用ceres库下的example 2d图优化PS:已完成ceres库的安装
qt编译如下文件
在这里插入图片描述报错如下
在这里插入图片描述

/usr/bin/ld: pose_graph_2d.o: undefined reference to symbol ‘ZN6google14FlagRegistererC1EPKcS2_S2_S2_PvS3
Makefile:255: recipe for target ‘TestCeres’ failed
//usr/lib/x86_64-linux-gnu/libgflags.so.2: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status

解决方法
1下载gflags库
git clone https://github.com/gflags/gflags.git
安装gflags
1 cd gflags
2 sudo mkdir build
3 sudo cmake …
4 sudo make
5 sudo make install
执行完可以看到以下输出
在这里插入图片描述生成libgflags.a和libgflags_nothreads.a两个静态库
注意头文件导入目录/usr/local/include
2链接库
此时我们只需要在我们的工程里链接这两个静态库就可以了
我ubuntu下用的是qt,添加方式如下截图
在这里插入图片描述最后编译正常
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值