내가 실행하면 jhbuild buildone gudev
다음을 얻습니다.
<SNIP>
Making all in .
CC extras/gudev/extras_gudev_libgudev_1_0_la-gudevclient.lo
CC extras/gudev/extras_gudev_libgudev_1_0_la-gudevdevice.lo
CC extras/gudev/extras_gudev_libgudev_1_0_la-gudevmarshal.lo
CC extras/gudev/extras_gudev_libgudev_1_0_la-gudevenumtypes.lo
CCLD extras/gudev/libgudev-1.0.la
GEN extras/gudev/GUdev-1.0.gir
/opt/gnome/bin/python: error while loading shared libraries: libpython2.5.so.1.0: cannot open shared object file: No such file or directory
make[2]: *** [extras/gudev/GUdev-1.0.gir] Error 127
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2
*** Error during phase build of gudev: ########## Error running make *** [1/1]
노트:
- 나는 그것을 가지고 있음을 확인합니다/opt/gnome/lib/libpython2.5.so.1.0.
- 이 글을 쓰는 시점에서 나는 최신 JHBuild를 실행하고 있습니다.
jhbuild bootstrap --ignore-system
저는 데비안 패키지의 비호환성 문제를 피 하려고 했습니다 . Python 2.5 so 파일은 이 명령으로 빌드되고 설치됩니다.
답변1
비표준 위치에 공유 라이브러리를 설치했기 때문에 찾을 수 없습니다.
/opt/gnome/lib
모든 프로그램이 자동으로 의 라이브러리를 사용하도록 하려면 이 디렉토리를 에 추가한 /etc/ld.so.conf
다음 ldconfig
루트로 실행하십시오. /etc/ld.so.conf
유사한 줄이 포함된 경우 include /etc/ld.so.conf.d/*.conf
항목을 에 직접 추가하는 대신 /etc/ld.so.conf
파일을 만들어 해당 파일에 /etc/ld.so.conf.d/tshepang.conf
추가합니다 ./opt/gnome/lib
요청 시 라이브러리 만 사용하고 싶 /opt/gnome/lib
거나 루트 액세스 권한이 없는 경우 LD_LIBRARY_PATH
환경 변수에 디렉터리를 추가하세요. (이것은 동일한 와 마찬가지로 콜론으로 구분된 목록이지만 PATH
실행 파일 대신 라이브러리에 대한 것입니다.)
세 번째 가능성은 /opt/gnome/bin/python
바이너리가 에서 라이브러리를 찾도록 지시하는 것입니다 /opt/gnome/lib
. 그러나 이는 실행 파일을 빌드할 때 수행되어야 합니다. JHBuild 문서에서 "길” 또는 “런타임 라이브러리 경로”.