[질문] ld.so.1 파일의 의미?
글쓴이: hurryon / 작성시간: 화, 2003/06/24 - 10:00오전
선 스팍 솔라리스 2.7 환경입니다.
ld.so.1 파일이 어떠한 역활을 하며 이 파일과 관련이 된 내용이 무엇이 있는지
궁금하여서 이렇게 글을 올립니다.
글을 올리게 된 이유는 로칼상(콘솔)에서는 MySQL C API로 작성된 프로그램이
제대로 작동을 하지만 웹상에서 실행시키니 아파치 에러로그에 다음과 같은
문구가 남아서 입니다.
Quote:
ld.so.1: /data2/htdocs/industry/bin/web_autocode: fatal: libmysqlclient.so.12: open failed: No such file or directory
아마도 라이브러리의 패스을 참조하지 못해서 일어나는 일인거 같습니다.
로칼유저(hurryon 사용자)로 작업하면 잘되는데 말입니다. hurryon 사용자
의 셸은 배쉬입니다.
export | grep LD_LIBRARY_PATH 의 결과는 다음과 같습니다.
Quote:
nscode:~$ export | grep LD_LIBRARY_PATH
declare -x LD_LIBRARY_PATH="/usr/lib:/usr/local/lib:/usr/local/mysql/lib/mysql:/users/hurryon/lib"
아마도 라이브러리 패스때문에 웹상에서는 안되는거 같습니다.
ㅡ.ㅡ;;
질문이 2개가 되었네요.
ld.so.1 파일과 관련된 내용과
배쉬셸의 .bashrc 파일에서가 아닌 시스템에서 라이브러리 패스을 어떻게
잡아야 하는지?
고견을 부탁합니다.
Forums:
정확한지는 모르겠지만, 참조하시기 바랍니다. ld.so.1 를 찾
정확한지는 모르겠지만, 참조하시기 바랍니다.
ld.so.1 를 찾아보면, runtime linker for dynamic objects 라고 합니다.
역활은 objects 를 실행시에 linking 해주는 역활을 하는 것 같습니다.
자세한것은 인터넷 man 에서 ld.so.1 을 찾아보시기 바랍니다.
그리고,
아파치를 구동하는 사용자의 LD_LIBRARY_PATH 를 설정하면,
아파치에서 파생되는 프로세서들이 적용되지 않을까 합니다.
그럼,, -_-;;
Re: [질문] ld.so.1 파일의 의미?
ld.so는 dynamic loading을 위한 라이브러리로 알고 있습니다. 현재 문제와는 별로 상관 없는듯 합니다. 그냥 libmysql을 찾지를 못해서 ld가 불평을 하는 것 같네요.
2.7에서는 시스템의 라이브러리 경로를 수정하기는 좀 어려운 것으로 알고 있구요, 그냥 아파치를 띄우는 스크립트에 LD_LIBRARY_PATH=/usr/local/mysql/lib/mysql을 추가해주시는게 가장 편한 방법일겁니다. Solaris 8의 경우는 crle를 이용해서 기본 경로를 바꿔줄 수 있는데 2.7은 없었던 것으로 압니다.
댓글 달기