2014-06-22 1 views
4

나는 C에서 프로그램을 실행하려고 ++ 그러나 나는이 오류가 무엇입니까 : 나는 오우거 라이브러리를 설치 한는로드 할 수 없습니다 동적 라이브러리는/usr/lib 디렉토리/오우거/RenderSystem_GL

terminate called after throwing an instance of 'Ogre::InternalErrorException' what(): OGRE EXCEPTION(7:InternalErrorException): Could not load dynamic library /usr/lib/OGRE/RenderSystem_GL. System Error: /usr/lib/OGRE/RenderSystem_GL.so: cannot open shared object file: No such file or directory 

을하지만,이 문제가 계속 지속 . 이 오류를 없애기 위해 어떤 패키지를 설치해야합니까? 나는 우분투 14.04를 사용하고있다.

답변

5

우분투에서 제공하는 OGRE 라이브러리는 /usr/lib/OGRE/이 아닌 /usr/lib/x86_64-linux-gnu/OGRE-1.9.0/ (또는 -1.8.0)에 설치됩니다.

프로그램에서 절대 경로와 함께 dlopen 또는 그와 비슷한 주소를 시도하고 있습니다. 이 새 경로를 사용하도록 프로그램을 수정할 수없는 경우 가장 쉬운 솔루션과 심볼릭 링크 생성되고, (더 나은 또는, 그것은 링커가 사용하는 어떤 경로를 결정할 수 있습니다) :

sudo ln -s /usr/lib/x86_64-linux-gnu/OGRE-1.9.0/ /usr/lib/OGRE/ 
0

ldd YOUR_BINARY가 필요한 동적 연결 라이브러리를 찾을 수 있는지보십시오.

+0

을이 저에게 출력을 준 많은 도서관 이름. 어떻게 도와 줄 수 있습니까? –

+0

libogre.so와 같은 이름이있을 수 있습니다. locate 또는 find를 사용하여 파일 시스템에 그러한 파일이 있는지 검색 할 수 있습니다. –