ROS 환경에서 일부 컴파일 예외 솔루션
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.26")
-- checking for module 'orocos-bfl'
-- package 'orocos-bfl' not found
CMake Error at /usr/share/cmake-2.8/Modules/FindPkgConfig.cmake:283 (message):
A required package was not found
Call Stack (most recent call first):
/usr/share/cmake-2.8/Modules/FindPkgConfig.cmake:337 (_pkg_check_modules_internal)
CMakeLists.txt:5 (pkg_check_modules)
솔루션: 참조 링크:https://blog.csdn.net/start_from_scratch/article/details/51160893bfl 패키지 설치:
sudo apt-get install ros-indigo-bfl
2 컴파일 경고: CMAKE_에서 "FindCeres.cmake"를 제공하지 않음MODULE_PATH
CMake Error at CMakeLists.txt:32 (find_package):
By not providing "FindCeres.cmake" in CMAKE_MODULE_PATH this project has
asked CMake to find a package configuration file provided by "Ceres", but
CMake did not find one.
Could not find a package configuration file provided by "Ceres" with any of
the following names:
CeresConfig.cmake
ceres-config.cmake
Add the installation prefix of "Ceres" to CMAKE_PREFIX_PATH or set
"Ceres_DIR" to a directory containing one of the above files. If "Ceres"
provides a separate development package or SDK, be sure it has been
installed.
원인: 상술한 경고는ceres-solver 패키지가 설치되지 않았거나ceres-solver 패키지 솔루션을 컴파일하지 않았기 때문일 수 있습니다. (1) 먼저 ceres-solver를 컴파일할 작업 공간에 놓고cartographer와 디렉터리를 컴파일합니다. 컴파일이 성공하면 계속합니다.(2) 이 컴파일 오류가 있으면 설치 강좌에 따라ceres-solver 라이브러리를 새로 설치합니다.
3 컴파일 경보":This workspace contains non-catkin packages in it
CMake Error at /opt/ros/indigo/share/catkin/cmake/catkin_workspace.cmake:95 (message):
This workspace contains non-catkin packages in it, and catkin cannot build
a non-homogeneous workspace without isolation. Try the
'catkin_make_isolated' command instead.
Call Stack (most recent call first):
CMakeLists.txt:63 (catkin_workspace)
경보 알림에 따라:
This workspace contains non-catkin packages in it, and catkin cannot build a non-homogeneous workspace without isolation.
catkin package, catkin “ ” without isolation
솔루션:
'catkin_make_isolated' command instead
‘catkin_make_isolated’ ‘catkin_make’
4 컴파일 경고: CMAKE_에서 "FindEigen3.cmake"를 제공하지 않음MODULE_PATH
CMake Error at CMakeLists.txt:33 (find_package):
By not providing "FindEigen3.cmake" in CMAKE_MODULE_PATH this project has
asked CMake to find a package configuration file provided by "Eigen3", but
CMake did not find one.
Could not find a package configuration file provided by "Eigen3" with any
of the following names:
Eigen3Config.cmake
eigen3-config.cmake
Add the installation prefix of "Eigen3" to CMAKE_PREFIX_PATH or set
"Eigen3_DIR" to a directory containing one of the above files. If "Eigen3"
provides a separate development package or SDK, be sure it has been
installed.
방안 1: (1) 우선 메인 파일에서 "FindEigen3.cmake"파일을 검색한 후/src/cartographer/cmake/modules/디렉터리에 복사하거나 FindEigen3.cmake를 CMakeLists.txt와 같은 디렉터리에 복사하면 됩니다.(2) (1) 해결 방법이 없으면 링크 참조https://answers.ros.org/question/250727/error-findeigen3cmake-during-install-kinetic-on-rpi/, (1)에 기초하여 cartographer가 있는 CMakeLists.txt에서 find_패키지(Eigen3 REQUIRED)의 위치에 다음과 같은 명령을 추가하여 컴파일하면 됩니다.
set(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR})
find_package(Eigen3 REQUIRED)
include_directories(${EIGEN3_INCLUDE_DIR})
(3) FindEigen3이 (1) 검색되지 않은 경우.cmake 파일은 시스템에 Eigen3가 없다는 것을 설명하고 링크를 참조합니다https://www.jianshu.com/p/20eb596b7eb5, Eigen3를 다운로드하여 설치하고 (1) 에 해당하는 파일을 복사하여 처리합니다.
사이트 주소: eigen 홈페이지
시나리오 2: 참조 링크:https://blog.csdn.net/qq_35508344/article/details/80485973eigen3를 시스템에 설치하려면:
#github mirror, 3.3.4 from 2017
git clone https://github.com/eigenteam/eigen-git-mirror
#
cd eigen-git-mirror
mkdir build
cd build
cmake ..
sudo make install
# , /usr/local/include/eigen3/
4 컴파일 경고: Could NOT find Bullet
CMake Error at /usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:108 (message):
Could NOT find Bullet (missing: BULLET_DYNAMICS_LIBRARY
BULLET_COLLISION_LIBRARY BULLET_MATH_LIBRARY BULLET_SOFTBODY_LIBRARY
BULLET_INCLUDE_DIR)
Call Stack (most recent call first):
/usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:315 (_FPHSA_FAILURE_MESSAGE)
/usr/share/cmake-2.8/Modules/FindBullet.cmake:76 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
CMakeLists.txt:15 (find_package)
분석: 경보 알림에 따라bullet 라이브러리 솔루션이 부족하여bullet 라이브러리를 설치합니다.참조 링크:https://blog.csdn.net/Groot_Lee/article/details/79202507
sudo apt-get install libbullet-dev
5 컴파일 경고: Could NOT find SDL
CMake Error at /usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:108 (message):
Could NOT find SDL (missing: SDL_LIBRARY SDL_INCLUDE_DIR)
Call Stack (most recent call first):
/usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:315 (_FPHSA_FAILURE_MESSAGE)
/usr/share/cmake-2.8/Modules/FindSDL.cmake:176 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
CMakeLists.txt:16 (find_package)
분석: 경고 프롬프트에 따라 SDL 라이브러리 솔루션이 부족하여 SDL 라이브러리를 설치합니다.참조 링크:https://blog.csdn.net/Groot_Lee/article/details/79202507
sudo apt-get install libsdl1.2-dev
7 컴파일 경고: Could NOT find SDL_image
CMake Error at /usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:108 (message):
Could NOT find SDL_image (missing: SDL_IMAGE_LIBRARIES
SDL_IMAGE_INCLUDE_DIRS)
Call Stack (most recent call first):
/usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:315 (_FPHSA_FAILURE_MESSAGE)
/usr/share/cmake-2.8/Modules/FindSDL_image.cmake:79 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
CMakeLists.txt:17 (find_package)
분석: 경고 프롬프트에 따라 SDL_ 없음image 라이브러리 솔루션, SDL_ 설치이미지 라이브러리.참조 링크:https://blog.csdn.net/Groot_Lee/article/details/79202507
sudo apt-get install libsdl-image1.2-dev
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
ekf 패키지 컴파일 오류또 오류: E: dpkg이 중단되었습니다. "sudo dpkg --configure-a"를 수동으로 실행하여 이 문제를 해결해야 합니다. 다음 오류를 수정하려면 "apt-get-f install"을 실행해야 할 수도...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.