Open cchester25 opened 2 days ago
Thank you so much for sharing your experience and the solutions you encountered during the iKalibr
deployment process! Your feedback is incredibly valuable, and it will certainly help others who may face similar issues. I appreciate the time and effort you've taken to help improve the deployment process, and I'm glad to hear that you found the library useful. If you have any further suggestions or run into any other issues, please don't hesitate to share them with us!
I would like to thank the author for their outstanding work. To assist with the faster deployment of ikalib, I am sharing the issues and solutions I encountered during my own deployment process, hoping to help others in need. Describe the bug To avoid conflicts with installed libraries, I installed dependencies like Ceres, Spdlog, etc., in a non-root directory during the deployment of ikalib.
System Information
To Reproduce Steps to reproduce the behavior:
Source Compilation
-DCMAKE_INSTALL_PREFIX="path/to/your"
during the CMake process to install dependencies in a custom location. c. Ceres 2.2.0 encountered an issue with CUDA not finding/usr/bin/nvcc
. Add-DCMAKE_CUDA_COMPILER="/usr/local/cuda/bin/nvcc"
after cmake .. . d. To compile Glomap with Eigen 3.3.7 and Ceres 1.14.0, changeCeres::ceres
in CMakeLists.txt toceres
. For Eigen 3.4.0 and Ceres 2.2.0, first install Eigen 3.4.0, then recompile Ceres with Eigen 3.4.0 dependencies, and modify the CMakeLists.txt paths accordingly:Finally, add
-DCMAKE_CUDA_COMPILER="/usr/local/cuda/bin/nvcc"
and compile Glomap.Compiling ikalib's Third-Party Libraries
Pay special attention to the
ctraj
library. Modifyctraj/src/CMakeLists.txt
as follows:Compiling ikalibr_generate_messages
-DCeres_DIR="path/to/your/lib/cmake/Ceres"
aftercatkin_make
.Run Catkin Make
catkin_make -j8 -DUSE_CMAKE_UNITY_BUILD=ON
a. Ifmagic_enum
is not found, modifyiKalib/src/ikalib/CMakeLists.txt
:b. If
fmt::format_string
is undeclared, modifyiKalib/src/ikalib/CMakeLists.txt
by adding before Build:Additional Context If CMake is not upgraded to version 3.27.0 or later, issues such as missing
CUDA::cusolver
may arise during the compilation ofctraj
.