You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have come across various compilation issues and solved them, so I'll put the process here for everyone else. I may not have the same problems as other people, but hopefully this is helpful!
Operating System: Windows 10, 64 bit Compiler: Visual Studio 2015
Half of the changes are to support more recent libraries such as OpenCV3 and Eigen3. I think these are all the changes I made:
(1) g2o can't find BLAS and LAPACK. The original ORB_SLAM2 g2o CMakeLists.txt file has removed the following two lines, and it seems to work:
Important: I also put quotes around all of directories in that file.
(5) If the linker can't find anything such as "_libjpeg", go into Project -> Properties -> Linker -> Input, and into Additional Dependencies. Double check all the values in there. As for _libjpeg.lib, I replaced it with C:/Program Files/Pangolin/build/external/libjpeg/lib/jpeg.lib (or the relevant location).
(6) It also complained about a runtime library mismatch. The two options are:
RECOMMENDED: recompile Pangolin as a DLL (check BUILD_SHARED_LIBS is ON and MSVC_USE_STATIC_CRT to OFF in CMake).
Go into ORB_SLAM2 Project -> Properties -> C/C++ -> Code Generation, set Runtime Library from Multi-threaded DLL (/MD) to Multi-threaded (/MT). You may need to do this for each individual project. I didn't get this method to work, because it would involve a lot of recompiling.
Also make sure that each time you compile something, the Debug/Release mode is consistent.
The text was updated successfully, but these errors were encountered:
I have come across various compilation issues and solved them, so I'll put the process here for everyone else. I may not have the same problems as other people, but hopefully this is helpful!
Operating System: Windows 10, 64 bit
Compiler: Visual Studio 2015
Half of the changes are to support more recent libraries such as OpenCV3 and Eigen3. I think these are all the changes I made:
(1) g2o can't find BLAS and LAPACK. The original ORB_SLAM2 g2o CMakeLists.txt file has removed the following two lines, and it seems to work:
I also removed the g2o
cmake_modules
folder, since it apparently isn't needed either. I think it works because BLAS and LAPACK are in Eigen3?(2) Every time there was an OpenCV dependency, I changed the following lines to support OpenCV3. This is only necessary if you use 3:
(3) I also had to change line 56 of linear_solver_eigen.h to support eigen3.3 (g2o will compile without this change, ORB_SLAM2 may not):
(4) When configuring ORB_SLAM2 itself, I had another issue in PangolinConfig.cmake, so I've fixed by removing:
Important: I also put quotes around all of directories in that file.
(5) If the linker can't find anything such as "_libjpeg", go into
Project -> Properties -> Linker -> Input
, and intoAdditional Dependencies
. Double check all the values in there. As for _libjpeg.lib, I replaced it withC:/Program Files/Pangolin/build/external/libjpeg/lib/jpeg.lib
(or the relevant location).(6) It also complained about a
runtime library mismatch
. The two options are:BUILD_SHARED_LIBS
isON
andMSVC_USE_STATIC_CRT
toOFF
in CMake).Project -> Properties -> C/C++ -> Code Generation
, setRuntime Library
fromMulti-threaded DLL (/MD)
toMulti-threaded (/MT)
. You may need to do this for each individual project. I didn't get this method to work, because it would involve a lot of recompiling.Also make sure that each time you compile something, the
Debug
/Release
mode is consistent.The text was updated successfully, but these errors were encountered: