!["LD_LIBRARY_PATH"가 Bash의 내장 환경 변수가 아닌 이유는 무엇입니까?](https://linux55.com/image/112058/%22LD_LIBRARY_PATH%22%EA%B0%80%20Bash%EC%9D%98%20%EB%82%B4%EC%9E%A5%20%ED%99%98%EA%B2%BD%20%EB%B3%80%EC%88%98%EA%B0%80%20%EC%95%84%EB%8B%8C%20%EC%9D%B4%EC%9C%A0%EB%8A%94%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
~에서걸프협력회의 소개:
로드 경로를 설정하는 가장 쉬운 방법은 환경 변수를 사용하는 것입니다
LD_LIBRARY_PATH
. 예를 들어, 다음 명령은 로드 경로를 찾을 수 있도록 설정/opt/gdbm-1.8.3/lib
합니다libgdbm.so
.$ LD_LIBRARY_PATH=/opt/gdbm-1.8.3/lib $ export LD_LIBRARY_PATH $ ./a.out Storing key-value pair... done.
LD_LIBRARY_PATH
이것은 Bash에 내장된 환경 변수가 아닙니다. 그렇죠? 그렇지 않으면 필요하지 않습니다 export
.
Bash 쉘은 PATH
외부 프로그램을 찾는 데 사용되며 PATH
Bash의 내장 환경 변수입니다.
Bash 쉘은 LD_LIBRARY_PATH
프로그램이 의존하는 공유 라이브러리를 찾는 데 사용됩니다. 그렇다면 LD_LIBRARY_PATH
Bash에는 왜 내장 환경 변수가 없습니까?
답변1
LD_LIBRARY_PATH
쉘에서는 사용되지 않고 동적 링커에서 사용됩니다. 바라보다man ld.so
더 알아보기.
내보내지 않으면 링커가 이를 볼 수 없고 이에 대한 작업을 수행할 수 없습니다.