완벽한 해결 error while loading shared libraries: libXX: cannot open shared object file: No such file o...
$ ./glcapsviewer
./glcapsviewer: error while loading shared libraries: libGLEW.so.1.13: cannot open shared object file: No such file or directory
$sudo apt-cache search libGLEW
glew-utils - OpenGL Extension Wrangler - utilities
libglew-dev - OpenGL Extension Wrangler - development environment
libglew2.0 - OpenGL Extension Wrangler - runtime environment
libglewmx-dev - OpenGL Extension Wrangler MX - development environment
libglewmx1.13 - OpenGL Extension Wrangler (Multiple Rendering Contexts)
은 검색된 몇 개의 라이브러리를 aptinstall을 통해 모두 설치했지만 문제가 해결되지 않았습니다/
디렉터리에서name이 libGLEW.so.1.13*
(libGLEW.so.1.13 후의 *
호는 일치하는 규칙으로 파일이 실제 libGLEW.so.1.13.0
으로 명명되는 것을 방지), 유형이 f
인 파일을 찾습니다.파일을 찾으면 환경 변수를 설정하여 ./glcapsviewer
을 실행할 때libGLEW를 찾을 수 있습니다.so.1.13.라이브러리가 /usr/lib
디렉터리에 설치되면 시스템이 실행할 때 자동으로 이 디렉터리에 있는 파일을 찾습니다. /usr/lib
디렉터리에 설치되지 않으면 환경 변수 sudo find / -name libGLEW.so.1.13* -type f
검색 후 libGLEW.so.1.13*
을 발견하지 못했습니다. 이것은 방안 1을 통해 우리가 원하는 파일을 설치하지 않았다는 것을 의미합니다.$ dpkg -S libGLEW.so
libglew2.0:amd64: /usr/lib/x86_64-linux-gnu/libGLEW.so.2.0
libglew2.0:amd64: /usr/lib/x86_64-linux-gnu/libGLEW.so.2.0.0
libGLEW를 찾았습니다.so.2.0, 방안 1에서 우리가 설치한 것은libGLEW라는 것을 설명한다.so.2.0 libGLEW 대신so.1.13, 그럼 저희는 1.13 버전을 찾아서 직접 설치하면 됩니다.make
을 실행했습니다.그리고 이 연결이 있는 페이지의 마지막, README.txt에는pre-generated(unsupported) snapshot 버전을 사용하여 설치할 수 있으며, 연결을 클릭하여 다운로드 페이지로 이동하여 우리가 필요로 하는 1.13 버전을 찾을 수 있으며, 다운로드 후 순조롭게 컴파일하여 설치할 수 있습니다.libGLEW가 설치되어 있는지 확인합니다.so.1.13*
$ sudo find / -name libGLEW.so.1.13* -type f
/usr/lib64/libGLEW.so.1.13.0
결과 libGLEW.so.1.13.0
을 찾았습니다.이 때 ./glcapsviewer
을 실행하면 여전히 같은 오류를 보고합니다. 환경 변수가 설정되지 않은 것으로 의심됩니다. ~/.profile
에서 마지막 줄에 export PATH="/usr/lib64:$PATH"
을 추가하여 환경 변수를 설정합니다../glcapsviewer
을 다시 실행합니까 아니면 같은 오류를 보고합니까, 인터넷 검색에서 답을 얻을 수 있습니다: so 라이브러리가 있는 디렉터리 /usr/lib64
을 /etc/ld.so.conf
에 기록하고 sudo ldconfig
을 실행하면glcapsviewer가 완벽하게 실행될 수 있습니다!/etc/ld.so.conf
의 역할: /etc/ld.so.conf.d/*
디렉터리에 있는 파일과 /etc/ld.so.conf
은 동적 링크 라이브러리의 경로를 기록합니다. 시스템은 기본적으로 /lib
과 /usr/lib
을 검색합니다. 다른 경로에 있는 라이브러리 파일은 이 파일에 지정해야 합니다.또는 LD_LIBRARY_PATH
환경 변수(~/.bashrc
또는 ~/.bash_profile
에 설정할 수 있으며, /etc/profile
에 설정하면 무효이며, 적어도 ubuntu18.04에 설정할 수 있음)를 설정하고 다른 경로를 추가합니다. 여러 개의 중간용: 을 분리합니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.