Hi Steve,

Please try the procedure below:

download openssl library, untar it, go in the dir, then:
    $ export STATICLIBSSL=/tmp/staticlibssl
    $ ./config --prefix=$STATICLIBSSL no-shared
    $ make && make install_sw

Then compile HAProxy:
    $ make TARGET=linux26 USE_OPENSSL=1 SSL_INC=$STATICLIBSSL/include
SSL_LIB=$STATICLIBSSL/lib ADDLIB=-ldl

That said, I usually install openssl in /opt.

Baptiste



On Tue, Nov 12, 2013 at 2:25 AM, steve <[email protected]> wrote:
> Hey everyone, I downloaded and installed openssl 1.0.1e by simple config and
> set the prefix to usr..
>
> I confirmed that running the command openssl version shows the right
> version.
>
> I then went to get the latest build of Haproxy via git and went to install
> it with this command.
>
> make TARGET=linux2628 USE_EPOLL=1 USE_OPENSSL=1 ARCH=x86_64
>
> Which spit out the following below :(
>
> [root@lb3 haproxy]# make TARGET=linux2628 USE_EPOLL=1 USE_OPENSSL=1
> ARCH=x86_64
> gcc -m64 -march=x86-64 -g -o haproxy src/haproxy.o src/sessionhash.o
> src/base64.o src/protocol.o src/uri_auth.o src/standard.o src/buffer.o
> src/log.o src/task.o src/chunk.o src/channel.o src/listener.o src/time.o
> src/fd.o src/pipe.o src/regex.o src/cfgparse.o src/server.o src/checks.o
> src/queue.o src/frontend.o src/proxy.o src/peers.o src/arg.o
> src/stick_table.o src/proto_uxst.o src/connection.o src/proto_http.o
> src/raw_sock.o src/appsession.o src/backend.o src/lb_chash.o src/lb_fwlc.o
> src/lb_fwrr.o src/lb_map.o src/lb_fas.o src/stream_interface.o
> src/dumpstats.o src/proto_tcp.o src/session.o src/hdr_idx.o src/ev_select.o
> src/signal.o src/acl.o src/sample.o src/memory.o src/freq_ctr.o src/auth.o
> src/compression.o src/payload.o src/ev_poll.o src/ev_epoll.o src/ssl_sock.o
> src/shctx.o ebtree/ebtree.o ebtree/eb32tree.o ebtree/eb64tree.o
> ebtree/ebmbtree.o ebtree/ebsttree.o ebtree/ebimtree.o ebtree/ebistree.o   -
> lcrypt  -lssl -lcrypto
> src/ssl_sock.o: In function `smp_fetch_ssl_fc_npn':
> /root/work/haproxy/src/ssl_sock.c:2462: undefined reference to
> `SSL_get0_next_proto_negotiated'
> src/ssl_sock.o: In function `ssl_sock_prepare_srv_ctx':
> /root/work/haproxy/src/ssl_sock.c:970: undefined reference to
> `TLSv1_2_client_method'
> /root/work/haproxy/src/ssl_sock.c:966: undefined reference to
> `TLSv1_1_client_method'
> src/ssl_sock.o: In function `ssl_sock_prepare_ctx':
> /root/work/haproxy/src/ssl_sock.c:739: undefined reference to
> `SSL_CTX_set_next_protos_advertised_cb'
> /root/work/haproxy/src/ssl_sock.c:756: undefined reference to
> `EC_KEY_new_by_curve_name'
> /root/work/haproxy/src/ssl_sock.c:764: undefined reference to `EC_KEY_free'
> /root/work/haproxy/src/ssl_sock.c:691: undefined reference to
> `TLSv1_2_server_method'
> /root/work/haproxy/src/ssl_sock.c:687: undefined reference to
> `TLSv1_1_server_method'
> collect2: ld returned 1 exit status
> make: *** [haproxy] Error 1
>
> looking for libcrypto i found these on my server
>
> [root@lb3 haproxy]# locate libcrypto
> /opt/rightscale/sandbox/lib/libcrypto.a
> /opt/rightscale/sandbox/lib/libcrypto.so
> /opt/rightscale/sandbox/lib/libcrypto.so.0.9.8
> /opt/rightscale/sandbox/lib/pkgconfig/libcrypto.pc
> /usr/lib64/.libcrypto.so.1.0.0.hmac
> /usr/lib64/.libcrypto.so.10.hmac
> /usr/lib64/libcrypto.so
> /usr/lib64/libcrypto.so.1.0.0
> /usr/lib64/libcrypto.so.10
> /usr/lib64/pkgconfig/libcrypto.pc
>
> and
>
> [root@lb3 haproxy]# ls -la /usr/lib64/libcrypt*
> -rw-r--r-- 1 root root 4319720 Nov 11 17:57 /usr/lib64/libcrypto.a
> lrwxrwxrwx 1 root root      18 Nov 11 16:57 /usr/lib64/libcrypto.so ->
> libcrypto.so.1.0.0
> lrwxrwxrwx 1 root root      18 Jan  2  2013 /usr/lib64/libcrypto.so.10 ->
> libcrypto.so.1.0.0
> -rwxr-xr-x 1 root root 1662832 Aug 23  2012 /usr/lib64/libcrypto.so.1.0.0
> lrwxrwxrwx 1 root root      25 Nov 11 16:56 /usr/lib64/libcrypt.so ->
> ../../lib64/libcrypt.so.1
>
> any idea why I cant get haproxy to compile?
>
> This is on CentOS 6.x.
>
> commands used
>
>
> //openssl 1.0.1e
> wget http://www.openssl.org/source/openssl-1.0.1e.tar.gz
> tar -xzvf openssl-1.0.1e.tar.gz
> cd openssl-1.0.1e
> ./config --prefix=/usr
> make install
>
> //haproxy
> git clone http://master.formilux.org/git/people/willy/haproxy.git/
> cd haproxy
> make -s TARGET=linux2628 USE_EPOLL=1 USE_OPENSSL=1 ARCH=x86_64 clean all
>
>
>

Reply via email to