Alpine Linux에서 라이브러리 검색 경로를 추가하는 방법은 무엇입니까? LD 구성

Alpine Linux에서 라이브러리 검색 경로를 추가하는 방법은 무엇입니까? LD 구성

설치용 dockerfile을 만들려고 합니다.수픽Alpine Linux 기본 이미지.

지침은 파일 생성 /etc/ld.so.conf.d/nwrfcsdk.conf및 배치를 보여줍니다 . 그러면 ldconfig가 saprfc 라이브러리를 로드해야 합니다./usr/local/sap/nwrfcsdk/libnwrfcsdk.conf

그러나 Alpine의 ldconfig는 ld.so.conf.d.ldconfig -p

그렇다면 Alpine Linux에서 사용자 정의 라이브러리 검색 경로를 추가하는 방법은 무엇입니까?

답변1

이것은 나에게 효과적입니다. 내 Java에는 setcap이 작동하려면 추가 라이브러리 경로가 필요합니다.

echo "/lib:/usr/local/lib:/usr/lib:/usr/lib/jvm/default-jvm/jre/lib/amd64:/usr/lib/jvm/default-jvm/jre/lib/amd64/jli:/usr/lib/jvm/java-1.8-openjdk/jre/lib/amd64/server" > /etc/ld-musl-x86_64.path

~에서무슬림 핸드북:

../etc/ld-musl-$(ARCH).path, taken relative to the location of
the "program interpreter" specified in the program's headers -
 if present, this will be processed as a text file containing 
the shared library search path, with components delimited by 
newlines or colons. If absent, a default path of 
"/lib:/usr/local/lib:/usr/lib" will be used. 
Not used by static-linked programs.

ld에서 사용하는 정확한 경로는 아치에 따라 다를 수 있습니다. 다음을 수행하여 내 경로를 찾았습니다.

# strace java ... 2>&1 | grep ld
open("/etc/ld-musl-x86_64.path", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)

관련 정보