Bug 169833 - ports/mail/exim /usr/bin/ld: cannot find -lhcrypto
Summary: ports/mail/exim /usr/bin/ld: cannot find -lhcrypto
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: Eygene Ryabinkin
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-07-13 18:20 UTC by Richard E. Depew
Modified: 2012-07-17 04:50 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Richard E. Depew 2012-07-13 18:20:07 UTC
Using portmaster in an attempt to upgrade exim-4.77_1 to exim-4.80 results in these errors at the end of the compilation:
..
cc -o exim
/usr/bin/ld: cannot find -lhcrypto
*** Error code 1

Stop in /usr/ports/mail/exim/work/exim-4.80/build-FreeBSD-sparc64.
*** Error code 1

Stop in /usr/ports/mail/exim/work/exim-4.80.
*** Error code 1

Stop in /usr/ports/mail/exim.

===>>> make failed for mail/exim
===>>> Aborting update

===>>> Update for mail/exim failed

Here is the "options" file from /var/db/ports/exim:
# This file is auto-generated by 'make config'.
# Options for exim-4.80
_OPTIONS_READ=exim-4.80
_FILE_COMPLETE_OPTIONS_LIST=ALT_CONFIG_PREFIX AUTH_CRAM_MD5 AUTH_DOVECOT AUTH_PLAINTEXT AUTH_RADIUS AUTH_SASL AUTH_SPA CDB CONTENT_SCAN DAEMON DCC DEBUG DISABLE_D_OPT DKIM DNSDB DSEARCH EMBEDDED_PERL EXIMON ICONV IPV6 KAS LISTMATCH_RHS LMTP LSEARCH MAILDIR MAILSTORE MBX MYSQL NIS OLD_DEMIME OPENLDAP PAM PASSWD PGSQL READLINE SASLAUTHD SA_EXIM SO_1024 SPF SQLITE SRS SRS_ALT SUID TCP_WRAPPERS TLS GNUTLS WISHLIST XCLIENT
OPTIONS_FILE_SET+=ALT_CONFIG_PREFIX
OPTIONS_FILE_SET+=AUTH_CRAM_MD5
OPTIONS_FILE_SET+=AUTH_DOVECOT
OPTIONS_FILE_SET+=AUTH_PLAINTEXT
OPTIONS_FILE_UNSET+=AUTH_RADIUS
OPTIONS_FILE_SET+=AUTH_SASL
OPTIONS_FILE_SET+=AUTH_SPA
OPTIONS_FILE_SET+=CDB
OPTIONS_FILE_UNSET+=CONTENT_SCAN
OPTIONS_FILE_SET+=DAEMON
OPTIONS_FILE_UNSET+=DCC
OPTIONS_FILE_UNSET+=DEBUG
OPTIONS_FILE_SET+=DISABLE_D_OPT
OPTIONS_FILE_SET+=DKIM
OPTIONS_FILE_SET+=DNSDB
OPTIONS_FILE_SET+=DSEARCH
OPTIONS_FILE_SET+=EMBEDDED_PERL
OPTIONS_FILE_UNSET+=EXIMON
OPTIONS_FILE_SET+=ICONV
OPTIONS_FILE_SET+=IPV6
OPTIONS_FILE_UNSET+=KAS
OPTIONS_FILE_UNSET+=LISTMATCH_RHS
OPTIONS_FILE_SET+=LMTP
OPTIONS_FILE_SET+=LSEARCH
OPTIONS_FILE_SET+=MAILDIR
OPTIONS_FILE_SET+=MAILSTORE
OPTIONS_FILE_SET+=MBX
OPTIONS_FILE_UNSET+=MYSQL
OPTIONS_FILE_UNSET+=NIS
OPTIONS_FILE_SET+=OLD_DEMIME
OPTIONS_FILE_UNSET+=OPENLDAP
OPTIONS_FILE_UNSET+=PAM
OPTIONS_FILE_UNSET+=PASSWD
OPTIONS_FILE_UNSET+=PGSQL
OPTIONS_FILE_UNSET+=READLINE
OPTIONS_FILE_SET+=SASLAUTHD
OPTIONS_FILE_UNSET+=SA_EXIM
OPTIONS_FILE_UNSET+=SO_1024
OPTIONS_FILE_UNSET+=SPF
OPTIONS_FILE_UNSET+=SQLITE
OPTIONS_FILE_UNSET+=SRS
OPTIONS_FILE_UNSET+=SRS_ALT
OPTIONS_FILE_SET+=SUID
OPTIONS_FILE_UNSET+=TCP_WRAPPERS
OPTIONS_FILE_SET+=TLS
OPTIONS_FILE_UNSET+=GNUTLS
OPTIONS_FILE_UNSET+=WISHLIST
OPTIONS_FILE_UNSET+=XCLIENT

In /usr/ports/mail/exim/work/exim-4.80/build-FreeBSD-sparc64/Makefile I see:
AUTH_LIBS=-lsasl2
AUTH_LIBS=-lgsasl
AUTH_LIBS=-lgssapi -lheimntlm -lkrb5 -lhx509 -lcom_err -lhcrypto -lasn1 -lwind -
lroken -lcrypt

That doesn't look right.

We are using sasl2, mainly, and I do not have the libraries called for by -lgsasl, -lheimntlm, -lhcrypto and -lwind.

Either some dependencies are missing or an incorrect AUTH_LIBS is being generated.

All other installed ports are fully up-to-date.

How-To-Repeat: portmaster mail/exim
Comment 1 Edwin Groothuis freebsd_committer freebsd_triage 2012-07-13 18:20:22 UTC
Class Changed
From-To: maintainer-update->change-request

Fix category (submitter is not maintainer) (via the GNATS Auto Assign 
Tool)
Comment 2 Edwin Groothuis freebsd_committer freebsd_triage 2012-07-13 18:20:28 UTC
Responsible Changed
From-To: freebsd-ports-bugs->rea

Over to maintainer (via the GNATS Auto Assign Tool)
Comment 3 Eygene Ryabinkin freebsd_committer freebsd_triage 2012-07-16 06:26:10 UTC
Please, try the patch at
  http://codelabs.ru/fbsd/ports/exim/4.80-fix-SASL-build.diff
it should fix the SASL problem.

This sequence should be enough:
{{{
cd /usr/ports/mail/exim
fetch -qo - http://codelabs.ru/fbsd/ports/exim/4.80-fix-SASL-build.diff | patch
rm -rf work
make && make deinstall install clean
}}}
-- 
Eygene Ryabinkin                                        ,,,^..^,,,
[ Life's unfair - but root password helps!           | codelabs.ru ]
[ 82FE 06BC D497 C0DE 49EC  4FF0 16AF 9EAE 8152 ECFB | freebsd.org ]
Comment 4 Richard E. Depew 2012-07-16 18:37:13 UTC
Thanks, Eygene, your instructions worked beautifully!

    cd /usr/ports/mail/exim
    fetch -qo -
    http://codelabs.ru/fbsd/ports/exim/4.80-fix-SASL-build.diff | patch
    rm -rf work
    make && make deinstall install clean

herring.ald.net is now running exim-4.80 thanks to you.

Thanks again!

Best wishes,
Dick
for ald.net Services, ltd.
Comment 5 dfilter service freebsd_committer freebsd_triage 2012-07-16 20:45:39 UTC
Author: rea
Date: Mon Jul 16 19:45:27 2012
New Revision: 300975
URL: http://svn.freebsd.org/changeset/ports/300975

Log:
  mail/exim: fix build with SASL
  
  Uncomment only relevant configuration line for SASL libraries
  (we're currently using SASL 2.x, so it is -lsasl2).
  
  PR:		169833
  Found by:	Richard E. Depew
  Pointyhat to:	rea@

Modified:
  head/mail/exim/Makefile

Modified: head/mail/exim/Makefile
==============================================================================
--- head/mail/exim/Makefile	Mon Jul 16 19:44:20 2012	(r300974)
+++ head/mail/exim/Makefile	Mon Jul 16 19:45:27 2012	(r300975)
@@ -336,7 +336,7 @@ SEDLIST+=	-e 's,^\# (AUTH_SPA=),\1,'
 .if defined(WITH_AUTH_SASL)
 LIB_DEPENDS+=	sasl2.2:${PORTSDIR}/security/cyrus-sasl2
 SEDLIST+=	-e 's,^\# (AUTH_CYRUS_SASL=),\1,' \
-		-e 's,^\# (AUTH_LIBS=),\1,'
+		-e 's,^\# (AUTH_LIBS=.*-lsasl2),\1,'
 .endif
 
 .if defined(WITH_AUTH_RADIUS)
_______________________________________________
svn-ports-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-ports-all
To unsubscribe, send any mail to "svn-ports-all-unsubscribe@freebsd.org"
Comment 6 Eygene Ryabinkin freebsd_committer freebsd_triage 2012-07-17 04:49:47 UTC
State Changed
From-To: open->closed

SASL build fixed, thanks for reporting and testing!