![如何在Alpine Linux上添加库搜索路径? LD配置](https://linux22.com/image/173669/%E5%A6%82%E4%BD%95%E5%9C%A8Alpine%20Linux%E4%B8%8A%E6%B7%BB%E5%8A%A0%E5%BA%93%E6%90%9C%E7%B4%A2%E8%B7%AF%E5%BE%84%EF%BC%9F%20LD%E9%85%8D%E7%BD%AE.png)
我正在尝试构建一个用于安装的 dockerfile萨普菲克在 Alpine linux 基础镜像上。
说明显示创建/etc/ld.so.conf.d/nwrfcsdk.conf
并放入/usr/local/sap/nwrfcsdk/lib
文件nwrfcsdk.conf
。然后 ldconfig 应加载 saprfc 库。
但是,我了解到 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)