3

我正在尝试在 SLES-11 docker 容器中编译 libffi 64 位。

configure & make 行非常简单:

./configure --prefix=/opt/<prog>/ --libdir=/opt/<prog>/lib
make 
make install

现在 libtool 在它的荣耀中决定像这样安装 .so:

/opt/<prog>/lib/../lib64/libffi.so

摆脱 ../lib64 部分的魔术是什么?

4

2 回答 2

3

发现问题。

Libtool 不是问题。

libffi 配置的神奇之处在于。它试图变得聪明并调用'gcc --print-multi-os-directory'并将其填充到toolexeclibdir中。

似乎疯狂通常是从配置脚本中修补出来的,例如这样的: https ://github.com/chef/omnibus-software/blob/master/config/patches/libffi/libffi-3.2.1-disable -multi-os-directory.patch

于 2017-11-24T11:52:25.770 回答
0

以下配置命令适用于我:

configure --prefix=$PREFIX --libdir=$PREFIX/lib --disable-multi-os-directory
于 2019-12-30T21:18:32.347 回答