홈>
PCL을 설치하기 위해 많은 튜토리얼을 따르고 있습니다 ... 다음과 같은 오류가 발생합니다 :
ld: library not found for -lflann
pcl
를 설치했습니다
brew install pcl
사용
. 내
CMakeList.txt
입니다
set(PCL_DIR "/usr/local/Cellar/pcl/1.9.1/share/pcl-1.9/")
cmake_minimum_required(VERSION 2.8 FATAL_ERROR)
project(pcd_write)
set(PCL_DIR "/usr/local/Cellar/pcl/1.9.1/share/pcl-1.9/")
find_package(PCL 1.9 REQUIRED)
include_directories(${PCL_INCLUDE_DIRS})
link_directories(${PCL_LIBRARY_DIRS})
add_definitions(${PCL_DEFINITIONS})
add_executable (pcd_write pcd_write.cpp)
target_link_libraries (pcd_write ${PCL_LIBRARIES})
cmake가 제대로 실행되고 Makefile을 만듭니다. make를 실행하면 다음과 같은 결과가 나타납니다.
[ 50%] Linking CXX executable pcd_write
ld: library not found for -lflann
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [pcd_write] Error 1
make[1]: *** [CMakeFiles/pcd_write.dir/all] Error 2
make: *** [all] Error 2
macOS Mojave에 PCL을 설치하기위한 업데이트 된 결정적인 안내서가 있습니까? 감사합니다 ..!
- 답변 # 1
- 답변 # 2
이 문제를 해결하는 가장 좋은 방법은 pcl을 다운로드하는 것입니다. 직접 컴파일하십시오. brew의 pcl (1.9.1_4)에 FLANN (1.9.1_7)에 대한 잘못된 링크가있는 것 같습니다
어쨌든 우리는'/ usr/local/Cellar/pcl/1.9.1_4/share/pcl-1.9/Modules'에서FindFLANN.cmake파일을 수정하여 해킹 할 수 있습니다.
파일의 시작 부분에 다음을 추가하십시오 :
set(FLANN_LIBRARIES /usr/local/Cellar/flann/1.9.1_7/lib/libflann.dylib /usr/local/Cellar/flann/1.9.1_7/lib/libflann_cpp.dylib) set(FLANN_FOUND TRUE)
Mac에서 ROS를 구축하기 위해 싸우고 있다면 도움이 되길 바란다 :)
관련 자료
- c++ - CMake 라이브러리 및 실행 파일을 한 번 빌드하고 연결
- spring - GraphQL 쿼리 작성을위한 권장 라이브러리가 있습니까?
- ng 빌드를 사용하여 Angular Library에서 외부 JS (TS가 아닌) 파일을 빌드합니까?
- c - 누락 된 라이브러리 표시 - 스택 설치를 사용하여 에키드나를 빌드하는 동안 ff
- c - 라이브러리와 포인터가없는 strcat 빌드
- typescript - ts es6 - 건물 도서관 :수출 문제
- build - 공유 라이브러리를 빌드 할 때 종속 라이브러리의 헤더 파일 만 필요합니까?
- C ++ Json 라이브러리 빌딩
- angular7에서 라이브러리를 빌드하는 동안 AWS SDK가 작동하지 않습니다
- c++ - CMake 프로젝트를 빌드 할 때 Boost 라이브러리를 열 수 없습니다
- Android Studio에서 Android 라이브러리 빌드 중 오류
- mint - Qsynth 043 FLUIDSYNTH 라이브러리 빌드 중 문제점을 찾을 수 없습니다
- Android 라이브러리 구축 오류 : 직접 로컬 .AAR 파일 종속성은 지원되지 않습니다.
- typescript - 라이브러리에서 자체 라이브러리를 사용할 때 각도 건물 라이브러리 오류가 발생합니다
- c++ - 라이브러리 OSX를 빌드하는 동안 'gflags/gflagsh'를 찾을 수 없습니다
동일한 문제가 있습니다 (macOS Mojave에서 ROS Kinetic의 일부로 pcl을 빌드 할 때). 내 해결 방법은
<올>link.txt
를 여는 중이었습니다. CMakeFiles의 모든 관련 하위 폴더에서 다음 교체를 수행하십시오.-lflann
교체 작성자/usr/local/lib/libflann.dylib
-lflann_cpp
교체 작성자/usr/local/lib/libflann_cpp.dylib
일부 파일에서는 여러 번 나타날 수 있습니다.
catkin
를 사용함에 따라 전체 빌드 프로세스에서 이러한 파일의 위치는 아마도 귀하의 위치와 약간 다를 수 있습니다.이 솔루션은 매우 해킹 적이며,이를 수행하는 더 적절한 방법이 있다고 확신하지만 빌드 작업을 수행했습니다.