제가 임의로 설정한 폴더에 위치한 library file들(*.so)를 LD_LIBRARY_PATH를 써도 못 읽을 때 어떻게 하죠?
글쓴이: eastcirclek / 작성시간: 수, 2011/06/15 - 11:56오후
상황을 말씀 드리자면
일단 linux machine에 root권한을 일부러 얻지 않고
제 홈디렉토리 밑에 프로그램들을 깔고
~/bin을 PATH 환경변수에 추가해놓고
~/lib를 LD_LIBRARY_PATH 환경변수에 추가해놓고
필요한 program들이나 library들을 설치해서 쓰고 있습니다.
그런데
몇몇 프로그램에서 필수는 아니지만 readline을 요구 하고 있어서
~/lib에 readline을 설치했지만 이걸 다른 프로그램이 설치될 때 읽지를 못하네요(예-postgresql 8.4)
/lib에는 분명히 libreadline.so.6이라는 파일이 있지만 이건 읽지 못하는거 같아서
~/lib/libreadline.so를 /lib에 강제로 복사했더니 잘 됩니다(-_- 이유를 모르겠네요)
아무튼 요점은
제가 임의로 사용할 library들을 ~/lib에 copy해놓고
LD_LIBRARY_PATH에 그 폴더를 추가 해 놨는데, 다른 프로그램이 그 안에 있는 파일들을 못봅니다.
Forums:
혹시, ln -s
혹시, ln -s ~/lib/libreadline.so.6 ~/lib/libreadline.so
아니겠죠?
해당 프로그램을 strace로 한번 실행해보시고
해당 프로그램을 strace로 한번 실행해보시고 결과를 보심이...
댓글 달기