I am trying to install openssl by source I run:
wget wget ftp://
tar xvzf openssl-1.0.2g.tar.gz
cd openssl-1.0.2g
./config --prefix=/home/david/project shared
make depend
make test
make install
makeIt fails after make test is executed with:
make[2]: Leaving directory `/home/david/project/openssl-1.0.1s'
make[2]: Entering directory `/home/david/project/openssl-1.0.1s/test'
/usr/bin/ld: cannot find -lssl
collect2: ld returned 1 exit status
make[2]: *** [link_app.gnu] Error 1
make[2]: Leaving directory `/home/david/project/openssl-1.0.1s/test'
make[1]: *** [bntest] Error 2
make[1]: Leaving directory `/home/david/project/openssl-1.0.1s/test'
make: *** [tests] Error 2How can libssl-dev be installed from source since I am not using package manager ?
EDIT. I had:
[root@localhost lib64]# ls -l libssl*
-rwxr-xr-x. 1 root root 258456 Dec 15 19:46 libssl3.so
lrwxrwxrwx. 1 root root 16 Feb 27 22:10 libssl.so.10 -> libssl.so.1.0.1e
-rwxr-xr-x. 1 root root 441240 Jan 8 14:45 libssl.so.1.0.1eand added:
[root@localhost lib64]# ls -l libssl*
-rwxr-xr-x. 1 root root 258456 Dec 15 19:46 libssl3.so
lrwxrwxrwx. 1 root root 16 Mar 18 16:24 libssl.so -> libssl.so.1.0.1e
lrwxrwxrwx. 1 root root 16 Feb 27 22:10 libssl.so.10 -> libssl.so.1.0.1e
-rwxr-xr-x. 1 root root 441240 Jan 8 14:45 libssl.so.1.0.1eHow could I get round having to add the symbolic link ? Is there something I could do as an install option ?
1 Answer
./config --prefix=/home/david/project shared
I don't normally use PREFIX. I would recommend using OPENSSLDIR since OpenSSL configure supports the option:
wget ftp://
tar xvzf openssl-1.0.2g.tar.gz
cd openssl-1.0.2g
./config shared no-ssl2 no-ssl3 no-comp --openssldir=/home/david/project
make depend
make test
make installAlso, you seem to have an extra make. I'm guessing you probably don't need it. What purpose does it serve?
make depend
make test
make install
makeAlso, you can probably avoid installing the man pages locally, and just use make install_sw:
make depend
make test
make install_swYou should also consider using an RPATH to make sure you avoid runtime linking problems:
export MYPATH=/home/david/project
./config shared no-ssl2 no-ssl3 no-comp -Wl,-rpath=${MYPATH}/lib --openssldir=${MYPATH}EDIT. I had...
Before you begin installing into an existing installation directory, you should probably just delete the old local installation:
export MYPATH=/home/david/project
rm -rf ${MYPATH}
./config shared no-ssl2 no-ssl3 no-comp -Wl,-rpath=${MYPATH}/lib --openssldir=${MYPATH}
make
make test
make install_swAlso see Compilation and Installation on the OpenSSL wiki. It discusses PREFIX, OPENSSLDIR and RPATHs. It also discusses other configuration options, like no-ssl2, no-ssl3 and no-comp.