부제 : /sbin/ldconfig 와 /etc/ld.so.conf 그리고 LD_LIBRARY_PATH
python을 하는데 so 파일을 쓰도록 했음에도 불구하고
제대로 설치되지 않는 문제가 있었다.
일단 실행을 하려니 libpython2.6.so 을 찾을수 없다는 건데
./configure --enable-shared
make
make install
로 했음에도 불구하고 안된다.
위에 내용으로 봐서는, make install 하면은 알아서 sharedinstall 까지 하므로 이상은 없다.
하지만
/sbin/ldconfig -p | grep python
으로 하면
구버전인 2.4만 나온다.
파일을 검색해보니
/usr/lib에 복사하지 않고
/usr/local/lib 에 복사가 된다.
그런 이유로, 강제로 /usr/local/lib를 참조하도록 해주어야 하는데
LD_LIBRARY_PATH 를 해주어도 반응이 없었다.(뭥미?!)
/etc/ld.so.config 파일을 열어보면(FC6 기준)
이런 내용 뿐인데
마지막 줄에
를 추가해준다.
그리고
/sbin/ldconfig 를 해주고 나서, 다시
/sbin/ldconfig -p | grep python
를 해주면
추가가 된다.
그럼 all right~!
[링크 : http://linux.die.net/man/8/ldconfig]
[링크 : http://seungyeop.kr/blog/textyle/809]
python을 하는데 so 파일을 쓰도록 했음에도 불구하고
제대로 설치되지 않는 문제가 있었다.
일단 실행을 하려니 libpython2.6.so 을 찾을수 없다는 건데
./configure --enable-shared
make
make install
로 했음에도 불구하고 안된다.
# vi Makefile 745 # Install everything 746 install: altinstall bininstall maninstall 747 748 # Install almost everything without disturbing previous versions 749 altinstall: altbininstall libinstall inclinstall libainstall \ 750 sharedinstall oldsharedinstall |
위에 내용으로 봐서는, make install 하면은 알아서 sharedinstall 까지 하므로 이상은 없다.
하지만
/sbin/ldconfig -p | grep python
으로 하면
구버전인 2.4만 나온다.
# /sbin/ldconfig -p | grep python libpython2.4.so.1.0 (libc6) => /usr/lib/libpython2.4.so.1.0 libpython2.4.so (libc6) => /usr/lib/libpython2.4.so libboost_python.so.2 (libc6) => /usr/lib/libboost_python.so.2 libboost_python.so (libc6) => /usr/lib/libboost_python.so |
파일을 검색해보니
# find /usr -name "libpython*" /usr/lib/libpython2.4.so /usr/lib/python2.4/config/libpython2.4.a /usr/lib/libpython2.4.so.1.0 /usr/lib/gnome-vfs-2.0/modules/libpythonmethod.so /usr/local/lib/python2.6/config/libpython2.6.a /usr/local/lib/libpython2.6.so.1.0 /usr/local/lib/libpython2.6.a /usr/local/lib/libpython2.6.so |
/usr/lib에 복사하지 않고
/usr/local/lib 에 복사가 된다.
그런 이유로, 강제로 /usr/local/lib를 참조하도록 해주어야 하는데
LD_LIBRARY_PATH 를 해주어도 반응이 없었다.(뭥미?!)
/etc/ld.so.config 파일을 열어보면(FC6 기준)
# cat /etc/ld.so.conf include ld.so.conf.d/*.conf |
마지막 줄에
/usr/local/lib/ |
그리고
/sbin/ldconfig 를 해주고 나서, 다시
/sbin/ldconfig -p | grep python
를 해주면
# /sbin/ldconfig -p | grep python libpython2.6.so.1.0 (libc6) => /usr/local/lib/libpython2.6.so.1.0 libpython2.6.so (libc6) => /usr/local/lib/libpython2.6.so libpython2.4.so.1.0 (libc6) => /usr/lib/libpython2.4.so.1.0 libpython2.4.so (libc6) => /usr/lib/libpython2.4.so libboost_python.so.2 (libc6) => /usr/lib/libboost_python.so.2 libboost_python.so (libc6) => /usr/lib/libboost_python.so |
추가가 된다.
그럼 all right~!
[링크 : http://linux.die.net/man/8/ldconfig]
[링크 : http://seungyeop.kr/blog/textyle/809]
'Programming > python(파이썬)' 카테고리의 다른 글
타겟에서 파이썬 실행시 오류 - Python C/API error with $PYTHONHOME (3) | 2010.03.18 |
---|---|
*.py *pyc *.pyo 무슨차이? (0) | 2010.03.11 |
python-config를 이용한 gcc 옵션 알아내기 (0) | 2010.03.03 |
python을 C에서 사용하기 (0) | 2010.03.02 |
파이썬 속도 향상 psyco(Python speed up) (0) | 2010.03.02 |