How to resolve openssl error when loading shared libraries libssl.so.1.1
1. The purpose of this post
After install openssl, we run the below command:
openssl versionto verity the installation, but sometimes we would get this error:
[root@node1 openssl-1.1.0f]# openssl versionopenssl: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory2. Environments
The linux system is:
[root@node1 openssl-1.0.0f]# uname -aLinux node1 3.10.0-862.14.4.el7.x86_64 #1 SMP Wed Sep 26 15:12:11 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux3. Debug
We try to find the file named libssl.so.1.1 as follows:
[root@localhost openssl-1.1.0f]# ll /usr/lib64/libssl*-rwxr-xr-x. 1 root root 315096 8m 7 2017 /usr/lib64/libssl3.solrwxrwxrwx. 1 root root 16 7m 9 2009 /usr/lib64/libssl.so.10 -> libssl.so.1.0.2k-rwxr-xr-x. 1 root root 470336 8m 4 2017 /usr/lib64/libssl.so.1.0.2k[root@localhost openssl-1.1.0f]# ll /usr/local/lib64Total 8984drwxr-xr-x. 2 root root 39 11m 8 11:30 engines-1.1-rw-r--r--. 1 root root 4967326 11m 8 11:30 libcrypto.alrwxrwxrwx. 1 root root 16 11m 8 11:30 libcrypto.so -> libcrypto.so.1.1-rwxr-xr-x. 1 root root 2934272 11m 8 11:30 libcrypto.so.1.1-rw-r--r--. 1 root root 766182 11m 8 11:30 libssl.alrwxrwxrwx. 1 root root 13 11m 8 11:30 libssl.so -> libssl.so.1.1-rwxr-xr-x. 1 root root 521384 11m 8 11:30 libssl.so.1.1drwxr-xr-x. 2 root root 61 11m 8 11:22 pkgconfigWe can find that the libcrypto.so.1.1 is located in the /usr/local/lib64,
But openssl try to find the .so libraries in the LD_LIBRARY_PATH:
[root@localhost ~]# echo $LD_LIBRARY_PATH/usr/lib64:/usr/local/lib64So the solution is try to tell openssl where the library is.
4. Resolve it
There are two methods to resolve this problem:
4.1 Method 1: Change the LD_LIBRARY_PATH
export LD_LIBRARY_PATH = /usr/local/lib64:$LD_LIBRARY_PATH4.2 Method 2: Create a link to the file
[root@localhost openssl-1.1.0f]# ln -s /usr/local/lib64/libssl.so.1.1 /usr/lib64/libssl.so.1.1[root@localhost openssl-1.1.0f]# ln -s /usr/local/lib64/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.15. More about the LD_LIBRARY_PATH
As the linux documents shown:
Final Words + More Resources
My intention with this article was to help others share my knowledge and experience. If you want to contact me, you can contact by email: Email me
Here are also the most important links from this article along with some further resources that will help you in this scope:
- 👨💻 Linux shared libraries documents
- 👨💻 LIBRARY_PATH vs LD_LIBRARY_PATH
- 👨💻 the full linux shared libary documents
Oh, and if you found these resources useful, don’t forget to support me by starring the repo on GitHub!