Phil,

Thank you for your reply.

This has already been set before.

# LDAP_LIB_TYPE=OPENLDAP1
# LDAP_LIB_TYPE=OPENLDAP2
# LDAP_LIB_TYPE=NETSCAPE
LDAP_LIB_TYPE=SOLARIS

Thanks,
Prashanth

-----Original Message-----
From: Phil Pennock [mailto:[email protected]] 
Sent: Wednesday, May 22, 2013 5:19 PM
To: Prashanth Katuri
Cc: [email protected]
Subject: Re: [exim] errors when building Makefile

On 2013-05-21 at 17:04 +0000, Prashanth Katuri wrote:
> I have been trying to upgrade exim (4.80.1) on Solaris and getting 
> below error when running make.

> gcc -o exim
> Undefined                       first referenced
> symbol                             in file
> ldap_start_tls_s                    lookups/lookups.a(ldap.o)
> ber_pvt_opt_on                      lookups/lookups.a(ldap.o)

I think that you didn't set LDAP_LIB_TYPE in Local/Makefile and are instead 
getting the defaults which point to OPENLDAP1.

In Local/Makefile, set:

  LDAP_LIB_TYPE=SOLARIS

Regards,
-Phil

----------------------------8< cut here >8------------------------------ # If 
you have set LOOKUP_LDAP=yes, you should set LDAP_LIB_TYPE to indicate # which 
LDAP library you have. Unfortunately, though most of their functions # are the 
same, there are minor differences. Currently Exim knows about four # LDAP 
libraries: the one from the University of Michigan (also known as # OpenLDAP 
1), OpenLDAP 2, the Netscape SDK library, and the library that comes # with 
Solaris 7 onwards. Uncomment whichever of these you are using.

# LDAP_LIB_TYPE=OPENLDAP1
# LDAP_LIB_TYPE=OPENLDAP2
# LDAP_LIB_TYPE=NETSCAPE
# LDAP_LIB_TYPE=SOLARIS

# If you don't set any of these, Exim assumes the original University of # 
Michigan (OpenLDAP 1) library.
----------------------------8< cut here >8------------------------------

The only usage of `ldap_start_tls_s` is guarded:
----------------------------8< cut here >8------------------------------ #ifdef 
LDAP_OPT_X_TLS
  /* The Oracle LDAP libraries (LDAP_LIB_TYPE=SOLARIS) don't support this: */
  if (eldap_start_tls)
    {
        if ( (rc = ldap_start_tls_s(lcp->ld, NULL, NULL)) != LDAP_SUCCESS) {
            *errmsg = string_sprintf("failed to initiate TLS processing on an "
                "LDAP session to server %s%s - ldap_start_tls_s() returned %d:"
                " %s", host, porttext, rc, ldap_err2string(rc));
            goto RETURN_ERROR;
        }
    }
#endif
----------------------------8< cut here >8------------------------------


-- 
## List details at https://lists.exim.org/mailman/listinfo/exim-users
## Exim details at http://www.exim.org/
## Please use the Wiki with this list - http://wiki.exim.org/

Reply via email to