2016年3月24日星期四

Compile Ceres and configure it in opencv cmake settings

从ceres官网上下载下来代码后,用cmake gui打开,在默认设置的基础上我只做了如下修改:
1、check MINIGLOG,否则如果没有设置gflags_DIR的话cmake会报错;
2、设置CMAKE_INSTALL_PREFIX到非C盘路径,默认的这个路径是到C盘,如果不改成非C盘路径,那么后续INSTALL的时候有可能由于没有权限而报错。
BUILD_SHARED_LIBS默认就是unchecked,意味着后续将编译生成静态.lib,不会生产.dll,这样后续自己编写的基于opencv的可执行程序目录中也就不需要.dll文件了,否则还得把ceres的.dll文件也一并拷到目录中,显得有点麻烦。我的理解是如果是静态.lib,那么opencv的哪个模块用到它了,就会把它整个封装过来,后续自己的可执行程序就只管opencv的模块的.lib和.dll就行了,不再牵扯到ceres的库。
generate后,打开.sln依次点击build ALL_BUILD和INSTALL。
然后再打开opencv的cmake配置,在ungrouped的里面找到Ceres_DIR,设置到上面install ceres的那个文件夹中的CMake文件夹,里面有CeresConfig.cmake文件,点击configure后会提示EIGEN_INCLUDE_DIR NOTFOUND,这时再把这个路径设置到eigen库的第一级路径即可,再次点击configure就行了。

没有评论:

发表评论