libgflags.so.2.2 그리고 glog.so 컴파일 오류 cannot open shared object file/symbol lookup error 해결 방법
9422 단어 SLAMSLAM 타사 소프트웨어 설치
오류 메시지는 다음과 같습니다.
./curve_fitting: error while loading shared libraries: libgflags.so.2.2: cannot open shared object file: No such file or directory
과
./curve_fitting: symbol lookup error: /usr/local/lib/libglog.so.0: undefined symbol: _ZN6google14FlagRegistererC1ISsEEPKcS3_S3_PT_S5_
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------오류 (1) 는 다음과 같습니다.
./curve_fitting: error while loading shared libraries: libgflags.so.2.2: cannot open shared object file: No such file or directory
그리고 이것은 내가 컴파일한 것을 모두 통과한 것이고 실행 가능한 파일을 생성했지만 이 오류를 일깨워 주었다. 그리고 시도: sudo apt-get installlibglags는 무효입니다. 내가 이미 설치했음을 보여줍니다!오보 (1) 해결 방법:
Step1:
git clone https://github.com/gflags/gflags
Step2:
cd gflags
mkdir build
cd build
Step3(중요):
build에 들어가면 다음을 입력합니다.
cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DBUILD_SHARED_LIBS=ON -DGFLAGS_NAMESPACE=google -G"Unix Makefiles" ..
다음 입력
make -j4
make를 발견하면 다음과 같은 피드백 메시지가 표시됩니다.
➜ build git:(master) make -j4
Scanning dependencies of target gflags_shared
Scanning dependencies of target gflags_nothreads_shared
[ 37%] Building CXX object CMakeFiles/gflags_nothreads_shared.dir/src/gflags_reporting.cc.o
[ 37%] Building CXX object CMakeFiles/gflags_shared.dir/src/gflags.cc.o
[ 37%] Building CXX object CMakeFiles/gflags_shared.dir/src/gflags_reporting.cc.o
[ 50%] Building CXX object CMakeFiles/gflags_nothreads_shared.dir/src/gflags.cc.o
[ 62%] Building CXX object CMakeFiles/gflags_shared.dir/src/gflags_completions.cc.o
[ 75%] Building CXX object CMakeFiles/gflags_nothreads_shared.dir/src/gflags_completions.cc.o
[ 87%] Linking CXX shared library lib/libgflags_nothreads.so
[100%] Linking CXX shared library lib/libgflags.so
[100%] Built target gflags_nothreads_shared
[100%] Built target gflags_shared
이것은libgflags를 보았기 때문에 사실 이미 좀 즐거웠다.so, 공유 라이브러리가 성공적으로 생성되었다는 것을 설명합니다!계속 입력
sudo make install
피드백 정보는 다음과 같습니다.
➜ build git:(master) sudo make install
[ 50%] Built target gflags_nothreads_shared
[100%] Built target gflags_shared
Install the project...
-- Install configuration: "Release"
-- Installing: /usr/local/lib/libgflags.so.2.2.1
-- Installing: /usr/local/lib/libgflags.so.2.2
-- Installing: /usr/local/lib/libgflags.so
-- Installing: /usr/local/lib/libgflags_nothreads.so.2.2.1
-- Installing: /usr/local/lib/libgflags_nothreads.so.2.2
-- Installing: /usr/local/lib/libgflags_nothreads.so
-- Installing: /usr/local/include/gflags/gflags.h
-- Installing: /usr/local/include/gflags/gflags_declare.h
-- Installing: /usr/local/include/gflags/gflags_completions.h
-- Installing: /usr/local/lib/cmake/gflags/gflags-config.cmake
-- Installing: /usr/local/lib/cmake/gflags/gflags-config-version.cmake
-- Old export file "/usr/local/lib/cmake/gflags/gflags-targets.cmake" will be replaced. Removing files [/usr/local/lib/cmake/gflags/gflags-targets-release.cmake].
-- Installing: /usr/local/lib/cmake/gflags/gflags-targets.cmake
-- Installing: /usr/local/lib/cmake/gflags/gflags-targets-release.cmake
-- Up-to-date: /usr/local/bin/gflags_completions.sh
-- Installing: /usr/local/lib/pkgconfig/gflags.pc
-- Installing: /home/hri/.cmake/packages/gflags/e5f7ce61772240490d3164df06f58ce9
자, 그리고 마지막 단계:
Step4:
입력:
sudo ldconfig
이것은 동적 링크 라이브러리를 불러오는 것을 뜻합니다. 일반적으로 설치 소프트웨어를 컴파일할 때 동적 링크 라이브러리의 오류가 발생하면 수동으로 불러와야 합니다!자, 다시 프로그램을 실행해 보니 위의 첫 번째 오류가 없어졌지만, 두 번째 오류가 발생했습니다.
오보 (2)
./curve_fitting: symbol lookup error: /usr/local/lib/libglog.so.0: undefined symbol: _ZN6google14FlagRegistererC1ISsEEPKcS3_S3_PT_S5_
이때 발견, 원래 위의 gflag와 같은 오류!그럼 계속 고양이처럼 고쳐!오보 (2) 해결 방법
Step1: glog 가져오기
git clone https://github.com/google/glog
Step2: glog 컴파일
순서대로 명령을 실행하세요. (줄마다 단독 명령입니다!)
cd glog
./autogen.sh
sudo CFLAGS="-fPIC" ./configure
mkdri build
cd build
cmake -D BUILD_gflags_LIBS=ON -D BUILD_SHARED_LIBS=ON -D BUILD_gflags_nothreads_LIBS=ON -D GFLAGS_NAMESPACE=ON ..
make -j4
sudo make install
--------------------------------------그래, 완벽하게 해결했어!libglog도 봤어요.so의 공유 라이브러리입니다!그리고 14강 6장의 절차를 집행하여 완벽하게 통과합니다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
ROS2에서 LiDAR Inertial SLAM최근 LiDAR Inertial SLAM인 LIO-SAM이 발표되었고, 저 안에서 LiDAR Inertial SLAM이 뜨겁습니다. LIO-SAM: Tightly-coupled Lidar Inertial Odomet...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.