On 6/22/18 12:21 PM, Lukas Tribus wrote:

> - share:
> grep OPENSSL_VERSION_TEXT /usr/include/openssl/opensslv.h
> grep OPENSSL_VERSION_TEXT /usr/local/include/openssl/opensslv.h
> grep OPENSSL_VERSION_TEXT /usr/local/openssl11/include/openssl/opensslv.h

grep OPENSSL_VERSION_TEXT /usr/include/openssl/opensslv.h
        #  define OPENSSL_VERSION_TEXT    "OpenSSL 1.1.0h-fips  27 Mar 2018"
        #  define OPENSSL_VERSION_TEXT    "OpenSSL 1.1.0h  27 Mar 2018"

grep OPENSSL_VERSION_TEXT /usr/local/include/openssl/opensslv.h
        grep: /usr/local/include/openssl/opensslv.h: No such file or directory

grep OPENSSL_VERSION_TEXT /usr/local/openssl11/include/openssl/opensslv.h
        #  define OPENSSL_VERSION_TEXT    "OpenSSL 1.1.0h-fips  27 Mar 2018"
        #  define OPENSSL_VERSION_TEXT    "OpenSSL 1.1.0h  27 Mar 2018"

where

        cat /usr/local/openssl11/include/openssl/opensslv.h
                ...
42              # define OPENSSL_VERSION_NUMBER  0x1010008fL
                # ifdef OPENSSL_FIPS
                #  define OPENSSL_VERSION_TEXT    "OpenSSL 1.1.0h-fips  27 Mar 
2018"
                # else
                #  define OPENSSL_VERSION_TEXT    "OpenSSL 1.1.0h  27 Mar 2018"
                # endif
                ...


> - don't build with PCRE for now
> - retry the SSL_INC/SSL_LIB approach (but without PCRE at all)
> - share the gcc lines of your original attempt (atleast one compile
> line and the linking)



unset LDFLAGS
make clean
make V=1 \
 TARGET=linux2628 \
 USE_SYSTEMD=1 \
 USE_OPENSSL=1 \
  ADDINC=" -I/usr/local/openssl11/include" \
  ADDLIB=" -L/usr/local/openssl11/lib64 -Wl,-rpath,/usr/local/openssl11/lib64" \
  ADDLIB="-ldl"

        ...
        gcc -Iinclude -Iebtree -Wall  -O2 -g -fno-strict-aliasing 
-Wdeclaration-after-statement -fwrapv -fno-strict-overflow 
-Wno-format-truncation  -Wno-null-dereference -Wno-unused-label       
-DCONFIG_HAP_LINUX_SPLICE -DTPROXY -DCONFIG_HAP_LINUX_TPROXY -DCONFIG_HAP_CRYPT 
-DENABLE_POLL -DENABLE_EPOLL -DUSE_CPU_AFFINITY -DASSUME_SPLICE_WORKS 
-DUSE_ACCEPT4 -DNETFILTER -DUSE_THREAD -DUSE_OPENSSL  -DUSE_SYSCALL_FUTEX 
-DUSE_SYSTEMD -I/usr/local/openssl11/include 
-DCONFIG_HAPROXY_VERSION=\"1.8.10-ec17d7a\" 
-DCONFIG_HAPROXY_DATE=\"2018/06/22\" -c -o src/ssl_sock.o src/ssl_sock.c
        src/ssl_sock.c: In function ‘ssl_locking_function’:
        src/ssl_sock.c:220:13: error: ‘CRYPTO_LOCK’ undeclared (first use in 
this function); did you mean ‘CRYPTO_RWLOCK’?
          if (mode & CRYPTO_LOCK) {
                     ^~~~~~~~~~~
                     CRYPTO_RWLOCK
        src/ssl_sock.c:220:13: note: each undeclared identifier is reported 
only once for each function it appears in
        src/ssl_sock.c:221:14: error: ‘CRYPTO_READ’ undeclared (first use in 
this function); did you mean ‘CRYPTO_ONCE’?
           if (mode & CRYPTO_READ)
                      ^~~~~~~~~~~
                      CRYPTO_ONCE
        src/ssl_sock.c: In function ‘ssl_locking_init’:
        src/ssl_sock.c:238:43: warning: implicit declaration of function 
‘CRYPTO_num_locks’; did you mean ‘CRYPTO_realloc’? 
[-Wimplicit-function-declaration]
          ssl_rwlocks = malloc(sizeof(HA_RWLOCK_T)*CRYPTO_num_locks());
                                                   ^~~~~~~~~~~~~~~~
                                                   CRYPTO_realloc
        src/ssl_sock.c:245:2: warning: implicit declaration of function 
‘CRYPTO_set_id_callback’; did you mean ‘BIO_set_callback’? 
[-Wimplicit-function-declaration]
          CRYPTO_set_id_callback(ssl_id_function);
          ^~~~~~~~~~~~~~~~~~~~~~
          BIO_set_callback
        src/ssl_sock.c:246:2: warning: implicit declaration of function 
‘CRYPTO_set_locking_callback’; did you mean ‘BIO_set_info_callback’? 
[-Wimplicit-function-declaration]
          CRYPTO_set_locking_callback(ssl_locking_function);
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~
          BIO_set_info_callback
        src/ssl_sock.c: In function ‘ssl_sock_do_create_cert’:
        src/ssl_sock.c:1693:23: warning: implicit declaration of function 
‘X509_get_notBefore’; did you mean ‘X509_getm_notBefore’? 
[-Wimplicit-function-declaration]
          if (!X509_gmtime_adj(X509_get_notBefore(newcrt), (long)-60*60*24) ||
                               ^~~~~~~~~~~~~~~~~~
                               X509_getm_notBefore
        src/ssl_sock.c:1693:23: warning: passing argument 1 of 
‘X509_gmtime_adj’ makes pointer from integer without a cast [-Wint-conversion]
          if (!X509_gmtime_adj(X509_get_notBefore(newcrt), (long)-60*60*24) ||
                               ^~~~~~~~~~~~~~~~~~~~~~~~~~
        In file included from /usr/local/openssl11/include/openssl/pem.h:17,
                         from /usr/local/openssl11/include/openssl/ssl.h:55,
                         from src/ssl_sock.c:43:
        /usr/local/openssl11/include/openssl/x509.h:479:12: note: expected 
‘ASN1_TIME *’ {aka ‘struct asn1_string_st *’} but argument is of type ‘int’
         ASN1_TIME *X509_gmtime_adj(ASN1_TIME *s, long adj);
                    ^~~~~~~~~~~~~~~
        src/ssl_sock.c:1694:23: warning: implicit declaration of function 
‘X509_get_notAfter’; did you mean ‘X509_getm_notAfter’? 
[-Wimplicit-function-declaration]
              !X509_gmtime_adj(X509_get_notAfter(newcrt),(long)60*60*24*365))
                               ^~~~~~~~~~~~~~~~~
                               X509_getm_notAfter
        src/ssl_sock.c:1694:23: warning: passing argument 1 of 
‘X509_gmtime_adj’ makes pointer from integer without a cast [-Wint-conversion]
              !X509_gmtime_adj(X509_get_notAfter(newcrt),(long)60*60*24*365))
                               ^~~~~~~~~~~~~~~~~~~~~~~~~
        In file included from /usr/local/openssl11/include/openssl/pem.h:17,
                         from /usr/local/openssl11/include/openssl/ssl.h:55,
                         from src/ssl_sock.c:43:
        /usr/local/openssl11/include/openssl/x509.h:479:12: note: expected 
‘ASN1_TIME *’ {aka ‘struct asn1_string_st *’} but argument is of type ‘int’
         ASN1_TIME *X509_gmtime_adj(ASN1_TIME *s, long adj);
                    ^~~~~~~~~~~~~~~
        src/ssl_sock.c: In function ‘ssl_get_dh_1024’:
        src/ssl_sock.c:2421:7: warning: implicit declaration of function 
‘BN_bin2bn’; did you mean ‘OBJ_nid2sn’? [-Wimplicit-function-declaration]
           p = BN_bin2bn(dh1024_p, sizeof dh1024_p, NULL);
               ^~~~~~~~~
               OBJ_nid2sn
        src/ssl_sock.c:2421:5: warning: assignment to ‘BIGNUM *’ {aka ‘struct 
bignum_st *’} from ‘int’ makes pointer from integer without a cast 
[-Wint-conversion]
           p = BN_bin2bn(dh1024_p, sizeof dh1024_p, NULL);
             ^
        src/ssl_sock.c:2422:5: warning: assignment to ‘BIGNUM *’ {aka ‘struct 
bignum_st *’} from ‘int’ makes pointer from integer without a cast 
[-Wint-conversion]
           g = BN_bin2bn(dh1024_g, sizeof dh1024_g, NULL);
             ^
        src/ssl_sock.c: In function ‘ssl_get_dh_2048’:
        src/ssl_sock.c:2468:5: warning: assignment to ‘BIGNUM *’ {aka ‘struct 
bignum_st *’} from ‘int’ makes pointer from integer without a cast 
[-Wint-conversion]
           p = BN_bin2bn(dh2048_p, sizeof dh2048_p, NULL);
             ^
        src/ssl_sock.c:2469:5: warning: assignment to ‘BIGNUM *’ {aka ‘struct 
bignum_st *’} from ‘int’ makes pointer from integer without a cast 
[-Wint-conversion]
           g = BN_bin2bn(dh2048_g, sizeof dh2048_g, NULL);
             ^
        src/ssl_sock.c: In function ‘ssl_get_dh_4096’:
        src/ssl_sock.c:2536:5: warning: assignment to ‘BIGNUM *’ {aka ‘struct 
bignum_st *’} from ‘int’ makes pointer from integer without a cast 
[-Wint-conversion]
           p = BN_bin2bn(dh4096_p, sizeof dh4096_p, NULL);
             ^
        src/ssl_sock.c:2537:5: warning: assignment to ‘BIGNUM *’ {aka ‘struct 
bignum_st *’} from ‘int’ makes pointer from integer without a cast 
[-Wint-conversion]
           g = BN_bin2bn(dh4096_g, sizeof dh4096_g, NULL);
             ^
        src/ssl_sock.c: In function ‘smp_fetch_ssl_x_notafter’:
        src/ssl_sock.c:6244:24: warning: passing argument 1 of 
‘ssl_sock_get_time’ makes pointer from integer without a cast [-Wint-conversion]
          if (ssl_sock_get_time(X509_get_notAfter(crt), smp_trash) <= 0)
                                ^~~~~~~~~~~~~~~~~~~~~~
        src/ssl_sock.c:5770:30: note: expected ‘ASN1_TIME *’ {aka ‘struct 
asn1_string_st *’} but argument is of type ‘int’
         ssl_sock_get_time(ASN1_TIME *tm, struct chunk *out)
                           ~~~~~~~~~~~^~
        src/ssl_sock.c: In function ‘smp_fetch_ssl_x_notbefore’:
        src/ssl_sock.c:6344:24: warning: passing argument 1 of 
‘ssl_sock_get_time’ makes pointer from integer without a cast [-Wint-conversion]
          if (ssl_sock_get_time(X509_get_notBefore(crt), smp_trash) <= 0)
                                ^~~~~~~~~~~~~~~~~~~~~~~
        src/ssl_sock.c:5770:30: note: expected ‘ASN1_TIME *’ {aka ‘struct 
asn1_string_st *’} but argument is of type ‘int’
         ssl_sock_get_time(ASN1_TIME *tm, struct chunk *out)
                           ~~~~~~~~~~~^~
        src/ssl_sock.c: In function ‘__ssl_sock_init’:
        src/ssl_sock.c:8800:2: warning: implicit declaration of function 
‘SSL_library_init’; did you mean ‘SSL_in_init’? 
[-Wimplicit-function-declaration]
          SSL_library_init();
          ^~~~~~~~~~~~~~~~
          SSL_in_init
        src/ssl_sock.c:8832:9: warning: implicit declaration of function 
‘SSLeay_version’; did you mean ‘SSL_version’? [-Wimplicit-function-declaration]
                 SSLeay_version(SSLEAY_VERSION),
                 ^~~~~~~~~~~~~~
                 SSL_version
        src/ssl_sock.c:8832:24: error: ‘SSLEAY_VERSION’ undeclared (first use 
in this function); did you mean ‘SSL2_VERSION’?
                 SSLeay_version(SSLEAY_VERSION),
                                ^~~~~~~~~~~~~~
                                SSL2_VERSION
        src/ssl_sock.c:8833:36: warning: implicit declaration of function 
‘SSLeay’; did you mean ‘SSLerr’? [-Wimplicit-function-declaration]
                 ((OPENSSL_VERSION_NUMBER ^ SSLeay()) >> 8) ? " (VERSIONS 
DIFFER!)" : "");
                                            ^~~~~~
                                            SSLerr
        src/ssl_sock.c: In function ‘__ssl_sock_deinit’:
        src/ssl_sock.c:8925:9: warning: implicit declaration of function 
‘ERR_free_strings’; did you mean ‘ERR_load_strings’? 
[-Wimplicit-function-declaration]
                 ERR_free_strings();
                 ^~~~~~~~~~~~~~~~
                 ERR_load_strings
        src/ssl_sock.c:8927:9: warning: implicit declaration of function 
‘EVP_cleanup’; did you mean ‘EVP_PBE_cleanup’? [-Wimplicit-function-declaration]
                 EVP_cleanup();
                 ^~~~~~~~~~~
                 EVP_PBE_cleanup
        src/ssl_sock.c:8930:9: warning: implicit declaration of function 
‘CRYPTO_cleanup_all_ex_data’; did you mean ‘CRYPTO_dup_ex_data’? 
[-Wimplicit-function-declaration]
                 CRYPTO_cleanup_all_ex_data();
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
                 CRYPTO_dup_ex_data
        make: *** [Makefile:909: src/ssl_sock.o] Error 1







unset LDFLAGS
make clean
make V=1 \
 TARGET=linux2628 \
 USE_SYSTEMD=1 \
 USE_OPENSSL=1 \
  ADDINC=" -I/usr/local/openssl11/include" \
  ADDLIB=" -L/usr/local/openssl11/lib64 -Wl,-rpath,/usr/local/openssl11/lib64" \
  SSL_INC="/usr/local/openssl11/include" \
  SSL_LIB="/usr/local/openssl11/lib64" \
  ADDLIB="-ldl"

        ...
        gcc -Iinclude -Iebtree -Wall  -O2 -g -fno-strict-aliasing 
-Wdeclaration-after-statement -fwrapv -fno-strict-overflow 
-Wno-format-truncation  -Wno-null-dereference -Wno-unused-label       
-DCONFIG_HAP_LINUX_SPLICE -DTPROXY -DCONFIG_HAP_LINUX_TPROXY -DCONFIG_HAP_CRYPT 
-DENABLE_POLL -DENABLE_EPOLL -DUSE_CPU_AFFINITY -DASSUME_SPLICE_WORKS 
-DUSE_ACCEPT4 -DNETFILTER -DUSE_THREAD -DUSE_OPENSSL 
-I/usr/local/openssl11/include -DUSE_SYSCALL_FUTEX -DUSE_SYSTEMD 
-I/usr/local/openssl11/include -DCONFIG_HAPROXY_VERSION=\"1.8.10-ec17d7a\" 
-DCONFIG_HAPROXY_DATE=\"2018/06/22\" -c -o src/ssl_sock.o src/ssl_sock.c
        src/ssl_sock.c: In function ‘ssl_locking_function’:
        src/ssl_sock.c:220:13: error: ‘CRYPTO_LOCK’ undeclared (first use in 
this function); did you mean ‘CRYPTO_RWLOCK’?
          if (mode & CRYPTO_LOCK) {
                     ^~~~~~~~~~~
                     CRYPTO_RWLOCK
        src/ssl_sock.c:220:13: note: each undeclared identifier is reported 
only once for each function it appears in
        src/ssl_sock.c:221:14: error: ‘CRYPTO_READ’ undeclared (first use in 
this function); did you mean ‘CRYPTO_ONCE’?
           if (mode & CRYPTO_READ)
                      ^~~~~~~~~~~
                      CRYPTO_ONCE
        src/ssl_sock.c: In function ‘ssl_locking_init’:
        src/ssl_sock.c:238:43: warning: implicit declaration of function 
‘CRYPTO_num_locks’; did you mean ‘CRYPTO_realloc’? 
[-Wimplicit-function-declaration]
          ssl_rwlocks = malloc(sizeof(HA_RWLOCK_T)*CRYPTO_num_locks());
                                                   ^~~~~~~~~~~~~~~~
                                                   CRYPTO_realloc
        src/ssl_sock.c:245:2: warning: implicit declaration of function 
‘CRYPTO_set_id_callback’; did you mean ‘BIO_set_callback’? 
[-Wimplicit-function-declaration]
          CRYPTO_set_id_callback(ssl_id_function);
          ^~~~~~~~~~~~~~~~~~~~~~
          BIO_set_callback
        src/ssl_sock.c:246:2: warning: implicit declaration of function 
‘CRYPTO_set_locking_callback’; did you mean ‘BIO_set_info_callback’? 
[-Wimplicit-function-declaration]
          CRYPTO_set_locking_callback(ssl_locking_function);
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~
          BIO_set_info_callback
        src/ssl_sock.c: In function ‘ssl_sock_do_create_cert’:
        src/ssl_sock.c:1693:23: warning: implicit declaration of function 
‘X509_get_notBefore’; did you mean ‘X509_getm_notBefore’? 
[-Wimplicit-function-declaration]
          if (!X509_gmtime_adj(X509_get_notBefore(newcrt), (long)-60*60*24) ||
                               ^~~~~~~~~~~~~~~~~~
                               X509_getm_notBefore
        src/ssl_sock.c:1693:23: warning: passing argument 1 of 
‘X509_gmtime_adj’ makes pointer from integer without a cast [-Wint-conversion]
          if (!X509_gmtime_adj(X509_get_notBefore(newcrt), (long)-60*60*24) ||
                               ^~~~~~~~~~~~~~~~~~~~~~~~~~
        In file included from /usr/local/openssl11/include/openssl/pem.h:17,
                         from /usr/local/openssl11/include/openssl/ssl.h:55,
                         from src/ssl_sock.c:43:
        /usr/local/openssl11/include/openssl/x509.h:479:12: note: expected 
‘ASN1_TIME *’ {aka ‘struct asn1_string_st *’} but argument is of type ‘int’
         ASN1_TIME *X509_gmtime_adj(ASN1_TIME *s, long adj);
                    ^~~~~~~~~~~~~~~
        src/ssl_sock.c:1694:23: warning: implicit declaration of function 
‘X509_get_notAfter’; did you mean ‘X509_getm_notAfter’? 
[-Wimplicit-function-declaration]
              !X509_gmtime_adj(X509_get_notAfter(newcrt),(long)60*60*24*365))
                               ^~~~~~~~~~~~~~~~~
                               X509_getm_notAfter
        src/ssl_sock.c:1694:23: warning: passing argument 1 of 
‘X509_gmtime_adj’ makes pointer from integer without a cast [-Wint-conversion]
              !X509_gmtime_adj(X509_get_notAfter(newcrt),(long)60*60*24*365))
                               ^~~~~~~~~~~~~~~~~~~~~~~~~
        In file included from /usr/local/openssl11/include/openssl/pem.h:17,
                         from /usr/local/openssl11/include/openssl/ssl.h:55,
                         from src/ssl_sock.c:43:
        /usr/local/openssl11/include/openssl/x509.h:479:12: note: expected 
‘ASN1_TIME *’ {aka ‘struct asn1_string_st *’} but argument is of type ‘int’
         ASN1_TIME *X509_gmtime_adj(ASN1_TIME *s, long adj);
                    ^~~~~~~~~~~~~~~
        src/ssl_sock.c: In function ‘ssl_get_dh_1024’:
        src/ssl_sock.c:2421:7: warning: implicit declaration of function 
‘BN_bin2bn’; did you mean ‘OBJ_nid2sn’? [-Wimplicit-function-declaration]
           p = BN_bin2bn(dh1024_p, sizeof dh1024_p, NULL);
               ^~~~~~~~~
               OBJ_nid2sn
        src/ssl_sock.c:2421:5: warning: assignment to ‘BIGNUM *’ {aka ‘struct 
bignum_st *’} from ‘int’ makes pointer from integer without a cast 
[-Wint-conversion]
           p = BN_bin2bn(dh1024_p, sizeof dh1024_p, NULL);
             ^
        src/ssl_sock.c:2422:5: warning: assignment to ‘BIGNUM *’ {aka ‘struct 
bignum_st *’} from ‘int’ makes pointer from integer without a cast 
[-Wint-conversion]
           g = BN_bin2bn(dh1024_g, sizeof dh1024_g, NULL);
             ^
        src/ssl_sock.c: In function ‘ssl_get_dh_2048’:
        src/ssl_sock.c:2468:5: warning: assignment to ‘BIGNUM *’ {aka ‘struct 
bignum_st *’} from ‘int’ makes pointer from integer without a cast 
[-Wint-conversion]
           p = BN_bin2bn(dh2048_p, sizeof dh2048_p, NULL);
             ^
        src/ssl_sock.c:2469:5: warning: assignment to ‘BIGNUM *’ {aka ‘struct 
bignum_st *’} from ‘int’ makes pointer from integer without a cast 
[-Wint-conversion]
           g = BN_bin2bn(dh2048_g, sizeof dh2048_g, NULL);
             ^
        src/ssl_sock.c: In function ‘ssl_get_dh_4096’:
        src/ssl_sock.c:2536:5: warning: assignment to ‘BIGNUM *’ {aka ‘struct 
bignum_st *’} from ‘int’ makes pointer from integer without a cast 
[-Wint-conversion]
           p = BN_bin2bn(dh4096_p, sizeof dh4096_p, NULL);
             ^
        src/ssl_sock.c:2537:5: warning: assignment to ‘BIGNUM *’ {aka ‘struct 
bignum_st *’} from ‘int’ makes pointer from integer without a cast 
[-Wint-conversion]
           g = BN_bin2bn(dh4096_g, sizeof dh4096_g, NULL);
             ^
        src/ssl_sock.c: In function ‘smp_fetch_ssl_x_notafter’:
        src/ssl_sock.c:6244:24: warning: passing argument 1 of 
‘ssl_sock_get_time’ makes pointer from integer without a cast [-Wint-conversion]
          if (ssl_sock_get_time(X509_get_notAfter(crt), smp_trash) <= 0)
                                ^~~~~~~~~~~~~~~~~~~~~~
        src/ssl_sock.c:5770:30: note: expected ‘ASN1_TIME *’ {aka ‘struct 
asn1_string_st *’} but argument is of type ‘int’
         ssl_sock_get_time(ASN1_TIME *tm, struct chunk *out)
                           ~~~~~~~~~~~^~
        src/ssl_sock.c: In function ‘smp_fetch_ssl_x_notbefore’:
        src/ssl_sock.c:6344:24: warning: passing argument 1 of 
‘ssl_sock_get_time’ makes pointer from integer without a cast [-Wint-conversion]
          if (ssl_sock_get_time(X509_get_notBefore(crt), smp_trash) <= 0)
                                ^~~~~~~~~~~~~~~~~~~~~~~
        src/ssl_sock.c:5770:30: note: expected ‘ASN1_TIME *’ {aka ‘struct 
asn1_string_st *’} but argument is of type ‘int’
         ssl_sock_get_time(ASN1_TIME *tm, struct chunk *out)
                           ~~~~~~~~~~~^~
        src/ssl_sock.c: In function ‘__ssl_sock_init’:
        src/ssl_sock.c:8800:2: warning: implicit declaration of function 
‘SSL_library_init’; did you mean ‘SSL_in_init’? 
[-Wimplicit-function-declaration]
          SSL_library_init();
          ^~~~~~~~~~~~~~~~
          SSL_in_init
        src/ssl_sock.c:8832:9: warning: implicit declaration of function 
‘SSLeay_version’; did you mean ‘SSL_version’? [-Wimplicit-function-declaration]
                 SSLeay_version(SSLEAY_VERSION),
                 ^~~~~~~~~~~~~~
                 SSL_version
        src/ssl_sock.c:8832:24: error: ‘SSLEAY_VERSION’ undeclared (first use 
in this function); did you mean ‘SSL2_VERSION’?
                 SSLeay_version(SSLEAY_VERSION),
                                ^~~~~~~~~~~~~~
                                SSL2_VERSION
        src/ssl_sock.c:8833:36: warning: implicit declaration of function 
‘SSLeay’; did you mean ‘SSLerr’? [-Wimplicit-function-declaration]
                 ((OPENSSL_VERSION_NUMBER ^ SSLeay()) >> 8) ? " (VERSIONS 
DIFFER!)" : "");
                                            ^~~~~~
                                            SSLerr
        src/ssl_sock.c: In function ‘__ssl_sock_deinit’:
        src/ssl_sock.c:8925:9: warning: implicit declaration of function 
‘ERR_free_strings’; did you mean ‘ERR_load_strings’? 
[-Wimplicit-function-declaration]
                 ERR_free_strings();
                 ^~~~~~~~~~~~~~~~
                 ERR_load_strings
        src/ssl_sock.c:8927:9: warning: implicit declaration of function 
‘EVP_cleanup’; did you mean ‘EVP_PBE_cleanup’? [-Wimplicit-function-declaration]
                 EVP_cleanup();
                 ^~~~~~~~~~~
                 EVP_PBE_cleanup
        src/ssl_sock.c:8930:9: warning: implicit declaration of function 
‘CRYPTO_cleanup_all_ex_data’; did you mean ‘CRYPTO_dup_ex_data’? 
[-Wimplicit-function-declaration]
                 CRYPTO_cleanup_all_ex_data();
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
                 CRYPTO_dup_ex_data
        make: *** [Makefile:909: src/ssl_sock.o] Error 1





unset LDFLAGS
make clean
make V=1 \
 TARGET=linux2628 \
 USE_OPENSSL=1 \
  SSL_INC=" -I/usr/local/openssl11/include" \
  SSL_LIB=" -L/usr/local/openssl11/lib64 -Wl,-rpath,/usr/local/openssl11/lib64"

        ...
        gcc -Iinclude -Iebtree -Wall  -O2 -g -fno-strict-aliasing 
-Wdeclaration-after-statement -fwrapv -fno-strict-overflow 
-Wno-format-truncation  -Wno-null-dereference -Wno-unused-label       
-DCONFIG_HAP_LINUX_SPLICE -DTPROXY -DCONFIG_HAP_LINUX_TPROXY -DCONFIG_HAP_CRYPT 
-DENABLE_POLL -DENABLE_EPOLL -DUSE_CPU_AFFINITY -DASSUME_SPLICE_WORKS 
-DUSE_ACCEPT4 -DNETFILTER -DUSE_THREAD -DUSE_OPENSSL 
-I-I/usr/local/openssl11/include -DUSE_SYSCALL_FUTEX  
-DCONFIG_HAPROXY_VERSION=\"1.8.10-ec17d7a\" 
-DCONFIG_HAPROXY_DATE=\"2018/06/22\" -c -o src/hash.o src/hash.c
        gcc  -g -o haproxy src/ev_poll.o src/ev_epoll.o src/ssl_sock.o 
ebtree/ebtree.o ebtree/eb32sctree.o ebtree/eb32tree.o ebtree/eb64tree.o 
ebtree/ebmbtree.o ebtree/ebsttree.o ebtree/ebimtree.o ebtree/ebistree.o 
src/proto_http.o src/cfgparse.o src/server.o src/stream.o src/flt_spoe.o 
src/stick_table.o src/stats.o src/mux_h2.o src/checks.o src/haproxy.o src/log.o 
src/dns.o src/peers.o src/standard.o src/sample.o src/cli.o 
src/stream_interface.o src/proto_tcp.o src/backend.o src/proxy.o 
src/tcp_rules.o src/listener.o src/flt_http_comp.o src/pattern.o src/cache.o 
src/filters.o src/vars.o src/acl.o src/payload.o src/connection.o 
src/raw_sock.o src/proto_uxst.o src/flt_trace.o src/session.o src/ev_select.o 
src/channel.o src/task.o src/queue.o src/applet.o src/map.o src/frontend.o 
src/freq_ctr.o src/lb_fwlc.o src/mux_pt.o src/auth.o src/fd.o src/hpack-dec.o 
src/memory.o src/lb_fwrr.o src/lb_chash.o src/lb_fas.o src/hathreads.o 
src/chunk.o src/lb_map.o src/xxhash.o src/regex.o src/shctx.o src/buffer.o 
src/action.o src/h1.o src/compression.o src/pipe.o src/namespace.o src/sha1.o 
src/hpack-tbl.o src/hpack-enc.o src/uri_auth.o src/time.o src/proto_udp.o 
src/arg.o src/signal.o src/protocol.o src/lru.o src/hdr_idx.o src/hpack-huff.o 
src/mailers.o src/h2.o src/base64.o src/hash.o   -lcrypt -ldl -lpthread 
-L-L/usr/local/openssl11/lib64 -Wl,-rpath,/usr/local/openssl11/lib64 -lssl 
-lcrypto -ldl




> - share the openssl config line and installation commands

gcc --version
        gcc (SUSE Linux) 8.1.1 20180614 [gcc-8-branch revision 261584]
which openssl
        /usr/local/openssl11/bin/openssl
openssl version
        OpenSSL 1.1.0h  27 Mar 2018
openssl version -f
        compiler: /usr/bin/gcc-8 -DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG 
-DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSL_IA32_SSE2 
-DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM 
-DSHA256_ASM -DSHA512_ASM -DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM 
-DGHASH_ASM -DECP_NISTZ256_ASM -DPADLOCK_ASM -DPOLY1305_ASM 
-DOPENSSL_API_COMPAT=0x10100000L -D_GNU_SOURCE -DOPENSSL_NO_BUF_FREELISTS 
-DOPENSSL_NO_HEARTBEAT -DPURIFY -DSSL_FORBID_ENULL -DTERMIO 
-DOPENSSLDIR="\"/usr/local/openssl11\"" 
-DENGINESDIR="\"/usr/local/openssl11/lib64/engines-1.1\""  -Wa,--noexecstack 
-Wall -fno-common -Wa,--noexecstack

ldd /usr/local/openssl11/bin/openssl
        linux-vdso.so.1 (0x00007ffe767d0000)
        libssl.so.1.1 => /usr/local/openssl11/lib64/libssl.so.1.1 
(0x00007fc6e1f0e000)
        libcrypto.so.1.1 => /usr/local/openssl11/lib64/libcrypto.so.1.1 
(0x00007fc6e1a65000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007fc6e1861000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fc6e1643000)
        libc.so.6 => /lib64/libc.so.6 (0x00007fc6e1289000)
        /lib64/ld-linux-x86-64.so.2 (0x00007fc6e2425000)
ldd /usr/local/openssl11/lib64/libssl.so
        linux-vdso.so.1 (0x00007ffc058e3000)
        libcrypto.so.1.1 => /usr/local/openssl11/lib64/libcrypto.so.1.1 
(0x00007f7c2fb42000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007f7c2f93e000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f7c2f720000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f7c2f366000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f7c3025a000)
ldd /usr/local/openssl11/lib64/libcrypto.so
        linux-vdso.so.1 (0x00007ffd34528000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007f9b7db96000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f9b7d978000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f9b7d5be000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f9b7e243000)

Reply via email to