정말 어이없는 일이지만 리눅스/유닉스 계통해서
성능을 크게 좌지우지 하는 부분은 디렉토리 트래버스다..
패쓰 찾아 다니는 것이 생각보다 빡침.
lookuppn 계열인가 그렇다.. 다 뒤고 다니니까..
뭐 그런 거로 패쓰 찾아 돌아다니는 건 가급적 짧을 수록 좋다.
LD_LIBRARY_PATH는 개발시에만 사용한다.
물론 크로스 컴파일 환경에서 이런저런 테스트를 하다보면 피할 수 없을 때도 있다.
ldconfig 등을 통해 정상 위치에 라이브러리를 배치하는 쪽이 속도 상으로는 제일 좋다.
임베디드 시스템, oem 특화 제품이라면 아예 루트에 1 뎁쓰로 배치하는 것도 좋은 방법이다.
라이브러리를 찾느라 디비는데 시간을 끄는 것은 아깝다.
pkg_config 에 대해서도 알아두면 좋다.
elf 로더라던가.. 이짝 계통으로 관련 내용에 대해서는 조사해보면 많이 나오니 참고..
예전 (커널 2.2) 시절에는 커널 빌드시 디렉토리 인/아웃에 시간을 너무 잡아 먹어서 소스 트리 가지치기를 한 적도 있다.
컴파일 시간 보다 하드 안을 돌아다니느라 시간을 소모한다는 것은 안타까운 일이다.
SSD라면 좀 빨라질 테지만.. 아.. 나도 SSD!
요약 : SSD가 사고 싶은 글.
아 물론 LD_에 의한 라이브러리 오버라이딩(?)이 가능하므로 이것은 해킹에도 취약하다. 예컨데 주요 POSIX 함수가 래핑되어 해커가 이것저것 할 수 있다.