Linux 部署 colmap 遇到的编译bug记录
官网下载代码源码下载地址: https://github.com/colmap/colmap 源码编译说明: Installation - COLMAP 3.8 documentationCOLMAP可以作为独立的app,通过命令行或者图形交互界面使用,也可以作为一个库被包含到其…2.glog相关报错,这个问题比较大,需要修改库内文件。修改CMakeLists.txt,添加一句set即可。修改源代
文章共557字 · 阅读需要大约2分钟
一键AI生成摘要,助你高效阅读
问答
·
第一个问题,环境包缺失
报错:
CMake Error at cmake/FindFLANN.cmake:89 (message):
Could not find FLANN Call Stack (most recent call first): cmake/FindDependencies.cmake:17 (find_package) CMakeLists.txt:86 (include)
解决
sudo apt-get install libflann-dev
同样报错
CMake Error at /root/miniconda3/lib/python3.8/site-packages/cmake/data/share/cmake-3.26/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
Could NOT find SQLite3 (missing: SQLite3_INCLUDE_DIR SQLite3_LIBRARY)
Call Stack (most recent call first):
/root/miniconda3/lib/python3.8/site-packages/cmake/data/share/cmake-3.26/Modules/FindPackageHandleStandardArgs.cmake:600 (_FPHSA_FAILURE_MESSAGE)
/root/miniconda3/lib/python3.8/site-packages/cmake/data/share/cmake-3.26/Modules/FindSQLite3.cmake:54 (find_package_handle_standard_args)
cmake/FindDependencies.cmake:24 (find_package)
CMakeLists.txt:86 (include)
一样,安装相关包
sudo apt-get install libsqlite3-dev
2.编译bug
第一个,CUDA配置错误,报错
CMake Error at cmake/FindDependencies.cmake:125 (message):
You must set CMAKE_CUDA_ARCHITECTURES to e.g. 'native', 'all-major', '70',
etc. More information at
https://cmake.org/cmake/help/latest/prop_tgt/CUDA_ARCHITECTURES.html
Call Stack (most recent call first):
CMakeLists.txt:87 (include)
修改CMakeLists.txt,添加一句set即可
set(CMAKE_CUDA_ARCHITECTURES "native")
2.glog相关报错,这个问题比较大,需要修改库内文件
CMake Error at /usr/local/lib/cmake/Ceres/FindGlog.cmake:349 (add_library):
add_library cannot create imported target "glog::glog" because another
target with the same name already exists.
Call Stack (most recent call first):
/usr/local/lib/cmake/Ceres/CeresConfig.cmake:247 (find_package)
cmake/FindDependencies.cmake:33 (find_package)
CMakeLists.txt:87 (include)
通过报错找到FindGlog.cmake 文件349 行
原代码为
修改源代码为(其实直接注释掉也无妨)
if(NOT TARGET glog::glog)
add_library(glog::glog INTERFACE IMPORTED)
target_include_directories(glog::glog INTERFACE ${GLOG_INCLUDE_DIRS})
target_link_libraries(glog::glog INTERFACE ${GLOG_LIBRARY})
endif()
完毕,顺利编译,祝大家搭环境顺利
更多推荐
已为社区贡献1条内容
所有评论(0)