Ceres-solver安装(win10+vs2015)

Ceres-solver安装:

Vs2015+win10

文件已经上传至(永久有效)

网盘:https://pan.baidu.com/s/1Vj_n2Nbp9WFVlbjuXV-OxQ

密码:3rvo

1、将网盘里的文件得到后,为ceres、gflags、glog建立build目录,如下图。

2、建立文件夹install,install里面新建3个文件夹:

 

3、安装

3.1 Eigen

不需要安装,解压完即可。如上图,eigen解压完我将其放在F:/ceres下。

3.2 安装gflags(最好在glog之前安装gflags,因为glog会用到gflags)

启动CMake GUI:填写以下内容。

  • 选择Configure->选择平台VS2015 x64。

之后会出现错误,这里只需改动以下部分就行:

  • 取消选中BUILD_Testing
  • CMAKE_INSTALL_PREFIX = F:/ceres/install/gflags(刚才新建的文件夹)
  • !!! 选中BUILD_SHARED_LIBS 以便生成.dll文件(这个选中是为了生成动态链接库,我之前试过使用静态链接库,但最后都失败了)。
  • 再次configure,就成功了。点击generate成功之后点击open project;
  • 分别在Debug x64和Release x64模式下,右键ALL_BUILD选择生成。
  • 再分别在Debugx64和Releasex64模式下,右键INSTALL选择生成。

到这里gflags就配置完成了。

3.3安装glog

同样的过程,

配置选项中:

  • 取消选中BUILD_TESTING
  • CMAKE_INSTALL_PREFIX = F:/ceres/install/glog(刚才新建的文件)
  • 选中WITH_GFLAGS
  • gflags_DIR = F:/ceres/install/gflags/lib/cmake/gflags
  • !!! 选中BUILD_SHARED_LIBS以便生成.dll文件。如果该项不存在通过“Add Entry”手动加入。

完全按照上图选择即可。

再点击generate->open project。

分别以Debug和Release模式(x64)生成ALL_BUILD项目和INSTALL项目。(和gflags过程一样)。

3.4安装ceres-solver

配置选项中:

  •   取消选中BUILD_EXAMPLES。为了节省后续编译时间。
  •   取消选中BUILD_TESTING。为了节省后续编译时间。
  •   选中BUILD_SHARED_LIBS,以便生成动态链接库文件。
  •   CMAKE_BUILD_TYPE 设为 Release。
  •   选中CUSTOM_BLAS。
  •   选中EIGENSPARSE。
  •  配置EIGEN_INCLUDE_DIR:F:/ceres/eigen-eigen
  •   选中GFLAGS和GLOG
  •   !!! 添加CMAKE_INSTALL_PREFIX 赋值 F:/ceres/install/ceres

完全按照下图选择即可(注意:若是某个没有,就手动Add Entry)

generate->open project。

切换编译器为Release x64模式。然后生成ALL_BUILD和INSTALL项目,完成Release模式的编译和安装过程。

3.5配置环境变量

我的电脑->属性->更改设置->高级->环境变量->系统变量->Path->编辑。注意设置完环境变量之后需要重启Visual Studio以生效。

在PATH中加入以下3个地址:

F:\Ceres\install\ceres\bin
F:\Ceres\install\gflags\bin
F:\Ceres\install\glog\bin

至此,Ceres安装过程完成。

4.测试

F:/ceres/ceres-solver-1.13.0/examples有很多实例。一般使用VS新建工程然后复制C++源代码的形式测试(这里选择helloworld.cpp进行测试)。

要记得在属性中加入各种库Include路径和Lib文件路径。包括涉及到的各种库:

注意:以下配置属性的时候,环境均是Release+x64。(和上述安装过程的环境要一致)

运行代码的时候,也要保证环境是Release+x64。

VC++目录-包含目录

VC++目录-库目录

C/C++->常规->附加包含目录

链接器-输入-附加的依赖项

 至此,ceres-solver就配置好了。我使用helloworld.cpp进行测试,结果如下:

 说明配置成功。

猜你喜欢

转载自www.cnblogs.com/gaoyixue/p/10920418.html