Matthew Seaman wrote: > Hi, > > I realise that 8.0 is literally just heading out of the door, but I seem to > have discovered a problem. > > When building the RELENG_8_0 world preparatory to upgrading a RELENG_7_2 > machine with OpenLDAP 2.4.19 installed, the build falls over because Kerberos ipropd picks up the presence of /usr/local/lib/libldap.so ultimately causing linking to fail because of missing OpenSSL symbols: > > ===> kerberos5/libexec/ipropd-master (all) > cc -O2 -pipe -I/usr/src/kerberos5/libexec/ipropd-master/../../../crypto/heimdal/lib/krb5 -I/usr/src/kerberos5/libexec/ipropd-master/../../../crypto/heimdal/lib/asn1 -I/usr/src/kerberos5/libexec/ipropd-master/../../../crypto/heimdal/lib/roken -I. -I/usr/local/include -DOPENLDAP=1 -DHAVE_CONFIG_H -I/usr/src/kerberos5/libexec/ipropd-master/../../include -std=gnu99 -fstack-protector -c /usr/src/kerberos5/libexec/ipropd-master/../../../crypto/heimdal/lib/kadm5/ipropd_common.c > cc -O2 -pipe -I/usr/src/kerberos5/libexec/ipropd-master/../../../crypto/heimdal/lib/krb5 -I/usr/src/kerberos5/libexec/ipropd-master/../../../crypto/heimdal/lib/asn1 -I/usr/src/kerberos5/libexec/ipropd-master/../../../crypto/heimdal/lib/roken -I. -I/usr/local/include -DOPENLDAP=1 -DHAVE_CONFIG_H -I/usr/src/kerberos5/libexec/ipropd-master/../../include -std=gnu99 -fstack-protector -c /usr/src/kerberos5/libexec/ipropd-master/../../../crypto/heimdal/lib/kadm5/ipropd_master.c > cc -O2 -pipe -I/usr/src/kerberos5/libexec/ipropd-master/../../../crypto/heimdal/lib/krb5 -I/usr/src/kerberos5/libexec/ipropd-master/../../../crypto/heimdal/lib/asn1 -I/usr/src/kerberos5/libexec/ipropd-master/../../../crypto/heimdal/lib/roken -I. -I/usr/local/include -DOPENLDAP=1 -DHAVE_CONFIG_H -I/usr/src/kerberos5/libexec/ipropd-master/../../include -std=gnu99 -fstack-protector -L/usr/local/lib -Wl,-rpath,/usr/local/lib -o ipropd-master ipropd_common.o ipropd_master.o -lkadm5srv -lhdb -lkrb5 -lhx509 -lroken /usr/obj/usr/src/kerberos5/libexec/ipropd-master/../../lib/libvers/libvers.a -lasn1 -lcrypto -lcrypt -lcom_err -lldap -llber > /usr/obj/usr/src/tmp/usr/bin/ld: warning: libssl.so.5, needed by /usr/local/lib/libldap.so, not found (try using -rpath or -rpath-link) > /usr/obj/usr/src/tmp/usr/bin/ld: warning: libcrypto.so.5, needed by /usr/local/lib/libldap.so, not found (try using -rpath or -rpath-link) > /usr/local/lib/libldap.so: undefined reference to `SSL_CTX_set_tmp_rsa_callback' > /usr/local/lib/libldap.so: undefined reference to `SSL_CTX_set_info_callback' > /usr/local/lib/libldap.so: undefined reference to `SSL_CTX_free' > /usr/local/lib/libldap.so: undefined reference to `SSL_shutdown' > /usr/local/lib/libldap.so: undefined reference to `SSL_load_client_CA_file' > /usr/local/lib/libldap.so: undefined reference to `SSL_CTX_set_default_verify_paths' > /usr/local/lib/libldap.so: undefined reference to `SSL_CTX_set_session_id_context' > /usr/local/lib/libldap.so: undefined reference to `SSL_get_error' > /usr/local/lib/libldap.so: undefined reference to `SSL_read' > /usr/local/lib/libldap.so: undefined reference to `SSL_new' > /usr/local/lib/libldap.so: undefined reference to `SSL_add_dir_cert_subjects_to_stack' > /usr/local/lib/libldap.so: undefined reference to `SSL_CTX_new' > /usr/local/lib/libldap.so: undefined reference to `SSL_library_init' > /usr/local/lib/libldap.so: undefined reference to `SSL_CTX_load_verify_locations' > /usr/local/lib/libldap.so: undefined reference to `SSL_pending' > /usr/local/lib/libldap.so: undefined reference to `SSL_CTX_set_verify' > /usr/local/lib/libldap.so: undefined reference to `SSL_set_bio' > /usr/local/lib/libldap.so: undefined reference to `SSL_load_error_strings' > /usr/local/lib/libldap.so: undefined reference to `SSL_get_certificate' > /usr/local/lib/libldap.so: undefined reference to `SSL_CTX_set_cipher_list' > /usr/local/lib/libldap.so: undefined reference to `SSL_accept' > /usr/local/lib/libldap.so: undefined reference to `SSL_CTX_ctrl' > /usr/local/lib/libldap.so: undefined reference to `SSL_CTX_get_cert_store' > /usr/local/lib/libldap.so: undefined reference to `SSL_get_current_cipher' > /usr/local/lib/libldap.so: undefined reference to `SSL_CIPHER_get_bits' > /usr/local/lib/libldap.so: undefined reference to `SSLv23_method' > /usr/local/lib/libldap.so: undefined reference to `SSL_alert_desc_string_long' > /usr/local/lib/libldap.so: undefined reference to `SSL_CTX_use_PrivateKey_file' > /usr/local/lib/libldap.so: undefined reference to `SSL_alert_type_string_long' > /usr/local/lib/libldap.so: undefined reference to `SSL_CTX_set_tmp_dh_callback' > /usr/local/lib/libldap.so: undefined reference to `SSL_CTX_use_certificate_file' > /usr/local/lib/libldap.so: undefined reference to `SSL_state_string_long' > /usr/local/lib/libldap.so: undefined reference to `SSL_connect' > /usr/local/lib/libldap.so: undefined reference to `SSL_free' > /usr/local/lib/libldap.so: undefined reference to `SSL_get_peer_certificate' > /usr/local/lib/libldap.so: undefined reference to `SSL_get_verify_result' > /usr/local/lib/libldap.so: undefined reference to `SSL_CTX_set_client_CA_list' > /usr/local/lib/libldap.so: undefined reference to `SSL_write' > *** Error code 1 > > Stop in /usr/src/kerberos5/libexec/ipropd-master. > *** Error code 1 > > Stop in /usr/src/kerberos5/libexec. > *** Error code 1 > > Stop in /usr/src/kerberos5. > *** Error code 1 > > Stop in /usr/src. > *** Error code 1 > > Stop in /usr/src. > *** Error code 1 > > Stop in /usr/src. > This seems to only affect the compilation of RELENG_8_0 sources in RELENG_7_2. Worked around by setting WITHOUT_KERBEROS=yes in /etc/src.conf, upgrading the system through the usual procedure including rebuilding all of the ports, and then removing /etc/src.conf and rebuilding world,kernel one more time. Still, ipropd-{master,slave} end up linked against the LDAP shlibs installed from ports which seems wrong to me, at least not without having to expressly set make variables to turn that behaviour on. % ldd /usr/libexec/ipropd-master /usr/libexec/ipropd-master: libkadm5srv.so.10 => /usr/lib/libkadm5srv.so.10 (0x80064b000) libhdb.so.10 => /usr/lib/libhdb.so.10 (0x80075a000) libkrb5.so.10 => /usr/lib/libkrb5.so.10 (0x800876000) libhx509.so.10 => /usr/lib/libhx509.so.10 (0x8009e3000) libroken.so.10 => /usr/lib/libroken.so.10 (0x800b22000) libasn1.so.10 => /usr/lib/libasn1.so.10 (0x800c33000) libcrypto.so.6 => /lib/libcrypto.so.6 (0x800db2000) libcrypt.so.5 => /lib/libcrypt.so.5 (0x80104b000) libcom_err.so.5 => /usr/lib/libcom_err.so.5 (0x801164000) libldap-2.4.so.7 => /usr/local/lib/libldap-2.4.so.7 (0x801266000) liblber-2.4.so.7 => /usr/local/lib/liblber-2.4.so.7 (0x8013a4000) libc.so.7 => /lib/libc.so.7 (0x8014b1000) libssl.so.6 => /usr/lib/libssl.so.6 (0x8016e7000) Cheers, Matthew -- Dr Matthew J Seaman MA, D.Phil. 7 Priory Courtyard Flat 3 PGP: http://www.infracaninophile.co.uk/pgpkey Ramsgate Kent, CT11 9PW
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:58 UTC