This assumes that `/opt/openssl` is not in use. If it is, pick
something else. `/opt/exim/openssl` perhaps.
- ./config --prefix=/opt/openssl --openssldir=/etc/ssl
- enable-ssl-trace
+ ./config --prefix=/opt/openssl --openssldir=/etc/ssl \
+ -L/opt/openssl/lib -Wl,-R/opt/openssl/lib \
+ enable-ssl-trace shared
make
make install
SUPPORT_TLS=yes
USE_OPENSSL_PC=openssl
- EXTRALIBS_EXIM=-ldl -Wl,-rpath,/opt/openssl/lib
+ LDFLAGS=-ldl -Wl,-rpath,/opt/openssl/lib
-The -ldl is needed by OpenSSL 1.1+ on Linux and is not needed on most
+The -ldl is needed by OpenSSL 1.0.2+ on Linux and is not needed on most
other platforms.
Then tell pkg-config how to find the configuration files for your new
make
sudo make install
+(From Exim 4.89, you can put that `PKG_CONFIG_PATH` directly into
+ your `Local/Makefile` file.)
+
Confirming
----------
ldd $(which exim) # most platforms
otool -L $(which exim) # MacOS
-although that does not correclty handle restrictions imposed upon
+although that does not correctly handle restrictions imposed upon
executables which are setuid.
If the `chrpath` package is installed, then:
will show the DT_RPATH stamped into the binary.
+Your `binutils` package should come with `readelf`, so an alternative
+is to run:
+
+ readelf -d $(which exim) | grep RPATH
+
Very Advanced
-------------