problem compiling postfix
Doug Silver
dsilver at urchin.com
Thu Apr 3 10:12:30 PST 2003
On Thursday 03 April 2003 09:37 am, Monte Ohrt wrote:
> Hi,
>
> I'm a newbie to FreeBSD, I love the ports collection and how it works!
> I've had good success compiling/installing complicated packages such as
> mysql/apache/php, very nice!
>
> Today I tried compiling postfix from the ports tree (up-to-date with
> CVSup), selecting LDAP and MySQL support, and I ran into this error:
>
> <snip>
> [src/error]
> gcc -Wmissing-prototypes -Wformat -DHAS_MYSQL -I/usr/local/include/mysql
> -DHAS_LDAP -I/usr/local/include -DHAS_PCRE -I/usr/local/include -O
> -pipe -mcpu=pentiumpro -I. -I../../include -DFREEBSD5 -c error.c
> gcc -Wmissing-prototypes -Wformat -DHAS_MYSQL -I/usr/local/include/mysql
> -DHAS_LDAP -I/usr/local/include -DHAS_PCRE -I/usr/local/include -O
> -pipe -mcpu=pentiumpro -I. -I../../include -DFREEBSD5 -o error error.o
> ../../lib/libmaster.a ../../lib/libglobal.a ../../lib/libutil.a
> /usr/local/lib/mysql/libmysqlclient.a -lm -lz /usr/local/lib/libldap.a
> /usr/local/lib/liblber.a -L/usr/local/lib -lpcre
> /usr/local/lib/libldap.a(tls.o): In function `ldap_pvt_tls_destroy':
> tls.o(.text+0xf): undefined reference to `SSL_CTX_free'
> tls.o(.text+0x1e): undefined reference to `EVP_cleanup'
> tls.o(.text+0x23): undefined reference to `ERR_free_strings'
> /usr/local/lib/libldap.a(tls.o): In function `ldap_pvt_tls_init':
> tls.o(.text+0x117): undefined reference to `SSL_load_error_strings'
> tls.o(.text+0x11c): undefined reference to `SSL_library_init'
> tls.o(.text+0x121): undefined reference to
[snip]
>
>
>
> I did not select any SSL options for Postfix, so I'm not sure why it
> looks for these SSL related things. Something obvious I missed, or?
>
> TIA
I saw errors like that when compiling mod_php4, which was due to it trying to
link in the libssl and/or libcrypto libraries. You can probably see the
exact error by looking in the config.log file. These libraries are in the
base system and will be installed in /usr/local if you install openssl from
ports. There are a couple of possible solutions:
1. Find the patch for /usr/ports/Mk/bsd.port.mk which forces it to use
OPENSSLBASE/USE_OPENSSL_PORT directives in your make.conf file. I have it,
and it's been posted to this list in the past few weeks.
2. You could also try temporarily symlinking /usr/lib/libssl.so/libcrypto.so
to the newer versions in /usr/local and see if that fixes it.
I've done both and things seem to be able to compile and work properly. There
are only a few things in the base system that link against them (sshd, pppd,
etc). I decided to use the ports ssh rather than the base, so this hasn't
been a big inconvenience to work around the openssl library issue.
HTH.
-doug
More information about the freebsd-ports
mailing list