主要参考
博主「猪蹄97」的原创文章:
原文链接:https://blog.csdn.net/weixin_44153180/article/details/110499667
资源下载
- cmake
下载地址:https://cmake.org/download/
cmake-3.21.3-windows-x86_64.msi - Cere Solver 2.0.0
下载地址:http://ceres-solver.org/installation.html - Eigen 3.3.4
下载地址:https://gitlab.com/libeigen/eigen/-/releases(参考资源中为3.3.8版本) - Gflags
下载地址:https://github.com/gflags/gflags - Glog
下载地址:https://github.com/google/glog - Suitesparse
下载地址:https://github.com/jlblancoc/suitesparse-metis-for-windows
编译
均可参考该博主文章:https://blog.csdn.net/weixin_44153180/article/details/110499667
编译中遇到的问题
- Eigen编译
QT4 NOT FOUND.
解决:下载安装QT,下载地址:https://download.qt.io/archive/qt/4.8/4.8.6/qt-opensource-windows-x86-vs2010-4.8.6.exe
版本:qt-opensource-windows-x86-vs2010-4.8.6.exe - SuiteSparse编译
无法解析的外部符号gk_optorg.
解决:suitesparse-metis-for-windows-master\SuiteSparse\metis-5.1.0\programs\CMakeLists.txt做修改,即在图中红色框线内的四行语句中,分别添加…/GKlib/getopt.c,修改后的结果如图所示:
- 测试hello world代码
0x00007FFDFE7DB70E (ucrtbase.dll) (OpenPoseDemo.exe 中)处有未经处理的异常: 请求了严重的程序退出。
原因:debug模式下,dll库的名称应该是比release模式的名称多一个字母d。参考文章中配置时使用的是release下的lib,所以在运行时应当在release模式下运行。
关于Ceres库编译的比较完整的博客还有:
https://blog.csdn.net/xixihaha369300/article/details/83546473