OpenGV Win7 VS2013 Cmake 编译静态库

Posted zi-wang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OpenGV Win7 VS2013 Cmake 编译静态库相关的知识,希望对你有一定的参考价值。

最近在实验室师兄的介绍下看了下OpenGV库(Open Geometric Vision),在ubuntu16上按照!网站 的方法可以很方便的安装,就是要主要make的线程数。一开始用make -j4,会出现一些错误,后来改成了单线程编译。其次是要注意eigen的版本,在win7上使用eigen-3-2-10可以编译成功,但是使用eigen-3-3-5就会出现错误。

ubuntu16上的make和install没什么好讲的,主要讲一下在window下的编译和install。

  1. 首先要确定path中没有g++、gcc的编译器,就是在环境变量中去掉MinGW的bin目录,没有安装MinGW的电脑不需要这一步。
  2. 修改CMakeLists.txt文件,在ADD_DEFINITIONS中,有visual studio编译器msvc不支持的命令行参数,-Wextra-Werror-Wwrite-strings-Wno-unused-parameter,将其注释掉就可以了。
  3. 在Cmake-gui中设置Eigen的路径
  4. 设置Cmake-install的路径,默认的是在C盘,将其设置为自己希望所在的文件下。否则在VS生成ALL Build后,再build install会出现权限问题。

可以先生成Debug,生成Release,每次都要install,然后会在cmake的install文件夹看到include和lib文件夹,lib文件下有opengv.lib和opengvd.lib。由于是静态库,opengvd.lib有200多M,opengv.lib有80多M。

build/bin文件下有几个例子,可以在cmd中看一下。

Debug模式生成的较快,Release模式生成的比较慢。可能与Eigen模板库有关系。

windows下怎么生成动态库还没清楚。

以上是关于OpenGV Win7 VS2013 Cmake 编译静态库的主要内容,如果未能解决你的问题,请参考以下文章

【CMAKE】求助-cmake 请问谁知道CMAKE如何使用?真正的初学者,win7系统,使用VS2005

CGAL库 Win7 + VS2015 + CMake3.6.1-GUI编译

zliblibzip libzippp 库编译(windows + cmake + vs2013)

CMake VS2013将“字符集”设置为“未设置”

使用cmake为vs2013配置cuda项目出现“invalid device function”错误

opencv配置过程 (cmake,vs2013,qt 5.4)