On Sat, Nov 30, 2013 at 4:20 AM, Igor Cicimov <icici...@gmail.com> wrote:

> Hi all,
>
> Im trying to build apache2.2.26 on CentOS5.10 final x86_64, linked to
> openssl1.0.1e which is also compiled and installed from source under
> /usr/loca/lib64:
>
> $ ls -l /usr/local/lib64/
> total 7060
> drwxr-xr-x 2 root root    4096 Nov 30 18:50 engines
> -rw-r--r-- 1 root root 3858348 Nov 30 18:50 libcrypto.a
> lrwxrwxrwx 1 root root      18 Nov 30 18:50 libcrypto.so ->
> libcrypto.so.1.0.0
> -r-xr-xr-x 1 root root 2145661 Nov 30 18:50 libcrypto.so.1.0.0
> -rw-r--r-- 1 root root  729426 Nov 30 18:50 libssl.a
> lrwxrwxrwx 1 root root      15 Nov 30 18:50 libssl.so -> libssl.so.1.0.0
> -r-xr-xr-x 1 root root  463549 Nov 30 18:50 libssl.so.1.0.0
> drwxr-xr-x 2 root root    4096 Nov 30 01:21 pkgconfig
>
> I've used the following process to compile openssl1.0.1e:
>
> $ ./Configure --prefix=/usr/local --openssldir=/usr/local/openssl
> enable-tlsext linux-x86_64 threads zlib enable-idea enable-rc5 enable-mdc2
> enable-ec shared
> $ make depend
> $ make
> $ sudo make install
>
> $ openssl version
> OpenSSL 1.0.1e 11 Feb 2013
>
> $ openssl s_client -connect smtp.gmail.com:25 -starttls smtp | grep
> Protocol
> depth=2 C = US, O = GeoTrust Inc., CN = GeoTrust Global CA
> verify error:num=20:unable to get local issuer certificate
> verify return:0
> 250 CHUNKING
>     Protocol  : TLSv1.2
>
> $ openssl s_client -connect gmail.com:443 | grep Protocol
> depth=2 C = US, O = GeoTrust Inc., CN = GeoTrust Global CA
> verify error:num=20:unable to get local issuer certificate
> verify return:0
>     Protocol  : TLSv1.2
>
> So as expected the client gets to use the TLSv1.2 protocol. I guess that
> means (maybe) openssl is good to go ...
>
> The relevant part of my apache configure command:
>
> $ ./configure LDFLAGS="-L/usr/local/lib64" --enable-ssl=shared
> --with-ssl=/usr/local/lib64 .....
>
> with double attempt to point apache to the openssl libraries, but make is
> failing with following error:
>
> /home/igor.cicimov/httpd-2.2.26/srclib/apr/libtool --silent --mode=link
> gcc -g -O2 -pthread     -L/usr/lib64 -L/usr/local/lib64/lib
> -L/usr/kerberos/lib64  -L/usr/local/lib64 -o ab  ab.lo   -lm
> /home/igor.cicimov/httpd-2.2.26/srclib/pcre/libpcre.la/home/igor.cicimov/httpd-2.2.26/srclib/apr-util/
> libaprutil-1.la /home/igor.cicimov/httpd-2.2.26/srclib/apr-util/xml/expat/
> libexpat.la /home/igor.cicimov/httpd-2.2.26/srclib/apr/libapr-1.la -luuid
> -lrt -lcrypt -lpthread -ldl -lssl -lcrypto -ldl -lz
> .libs/ab.o: In function `main':
> /home/igor.cicimov/httpd-2.2.26/support/ab.c:2241: undefined reference to
> `TLSv1_2_client_method'
> /home/igor.cicimov/httpd-2.2.26/support/ab.c:2239: undefined reference to
> `TLSv1_1_client_method'
> collect2: ld returned 1 exit status
> make[2]: *** [ab] Error 1
> make[2]: Leaving directory `/home/igor.cicimov/httpd-2.2.26/support'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/home/igor.cicimov/httpd-2.2.26/support'
> make: *** [all-recursive] Error 1
>
> This is not my first time I compile apache and openssl and have never seen
> this error about apache tools. What am I missing here? Any thoughts?
>

I guess it is because of the order of the system library and your local
library dir in the linker search path:

libtool --mode=link ... -L/usr/lib64 -L/usr/local/lib64/lib ...


>
> Thanks,
> Igor
>
>
>
>


-- 
Born in Roswell... married an alien...
http://emptyhammock.com/

Reply via email to