使用自定义版本的openssl构建愚蠢

时间:2019-02-03 22:09:03

标签: gcc makefile build openssl folly

我正在尝试使用自定义版本的openssl(libssl和libcrypto)来构建folly。我的主机上libssl(和libcrypto)的默认位置是/lib64,但我希望它将其链接到自定义位置。为此,我在Makefile中使用了rpath。以下是确切的代码

export LDFLAGS="$LDFLAGS -Wl,-rpath,/home/<username>/openssl/openssl/1001.0.5.0/lib/" 
$AUTOCONF_HOME/bin/autoreconf --install
./configure --prefix="$install" --with-boost="$BOOST_HOME" CXXFLAGS="-g -O0 --std=c++17"
make -j`nproc` install

构建正常,但是可以链接到/lib64/libssl.so(这不是我想要的)。

$ ldd -d .folly/.libs/libfolly.so | grep libssl
    libssl.so.10 => /lib64/libssl.so.10 (0x00007fa52502b000)

我已验证rpath位置包含所需的库

$ ls /home/<username>/openssl/openssl/1001.0.5.0/lib/ | grep libssl
libssl.a
libssl.so
libssl.so.1.1
$ file /home/<username>/openssl/openssl/1001.0.5.0/lib/libssl.so
/home/<username>/openssl/openssl/1001.0.5.0/lib/libssl.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=84801d9122d90bf2c79eea79f6241d629c3e9b30, not stripped

很显然,我缺少一些东西-我无法弄清楚。有人可以帮忙:)

0 个答案:

没有答案