orb-slam3在windows下编译

引言:windows下有强大的visual studio,也比较熟悉windows下开发,所以尝试在windows下编译。

由于电脑上已经安装了vcpkg,我看其他人的教程都是该MT, 静态库等,可能vcpkg安装的库要么是版本太新了,要么就是不支持定制。再一个对vcpkg的了解也只是会用而已,可能定制化的编译往往会导致复杂的库之间的不兼容,无奈只能不依赖vcpkg定制化编译。

参照ORB-SLAM3在windows下的编译使用 - 知乎

平台:windows10, vs2022,cpu i7 10750H  GPU GTX 1650 Ti with max Q

编译DBoW2和g2o照着原教程即可

---------------------------------------------------------------------------------------------------------------------

将配置改成release,同时右键项目==> 属性 ==> 常规 ==> 配置类型 ==> 静态库(.lib);属性 ==> 高级 ==> 目标文件扩展名 ==> .lib;C/C++ ==> 代码生成 ==> 运行库 ==> 多线程 (/MT)CMakeLists.txt中 -Wall 改成-W3

编译pangolin

-----------------------------------------------------------------------------------------------------------------

出现了不一样,原本会自动下载的zlib,libpng,libjpeg, glew都没下载

于是手动将cmakelists.txt中的仓库一个一个clone下来,然后cmake, build, install

编译pangolin.lib时出现一堆错误,于是在pangolin项目中C/C++ ==> 预处理器 ==>最上面加入_WIN_
HAVE_GLEW,然后pangolin.lib正常编译,该项目下其他的项目编译不通过,移除掉失败的工程,最后生成INSTALL项目。

编译orb-slam3

------------------------------------------------------------------------------

由于没有自动下载boost,glew等三方库,采取手段添加头文件目录,glew需要添加glew_shared.lib,添加静态库glew.lib会出现大量编译错误

将配置改成release,同时右键项目==> 属性 ==> 常规 ==> 配置类型 ==> 静态库(.lib);属性 ==> 高级 ==> 目标文件扩展名 ==> .lib;C/C++ ==> 代码生成 ==> 运行库 ==> 多线程 (/MT);C/C++ ==> 预处理器 ,添加以下预编译器定义
WINDOWS
COMPILEDWITHC11,编译速度较慢,打开多处理器编译提速明显 右键项目==> 属性 ==>C/C++==>多处理器编译改为是。

至此编译结束。

tum_vi

orb-slam3在windows下编译_第1张图片

 

你可能感兴趣的:(windows,c++,算法)