Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 5 Jun 2006 14:41:05 +0200
From:      boink <lordboink@gmail.com>
To:        freebsd-questions@freebsd.org
Subject:   Compile courier-imap 4.1.1 fails (/usr/bin/ld: cannot find -lpcre)
Message-ID:  <73cb07950606050541l5ae80462l119bfeba72c3b2fc@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
Dear all,

I'm building a pop toaster, have qmail up and running, vpopmail too,
now trying to get courier-imap-4.1.1 working.

Platform: FreeBSD 6.0_RELEASE, GENERIC kernel.

Problem: when installing from source, ./configure works OK (non-root,
as advised):
$./configure --without-authdaemon --with-authvchkpw
--enable-unicode=iso-8859-1,iso-8859-15,utf-8

but...
$make check
<snip>
Linking maildirmake
Linking testmaildirfilter
/usr/bin/ld: cannot find -lpcre
*** Error code 1

Stop in /usr/download/qmail/courier-imap-4.1.1/maildir.
*** Error code 1

Stop in /usr/download/qmail/courier-imap-4.1.1/maildir.
*** Error code 1


maildir/Makefile has:
...
CPPFLAGS = -I/usr/local/include -I/usr/local/include
...
CXXFLAGS = -I/usr/local/include -I/usr/local/include -Wall
...
LDFLAGS =  -L/usr/local/lib -L/usr/local/lib -rpath=/usr/lib:/usr/local/lib
...

Is there any reason these should be specified twice?  Why doesn't
LDFLAGS mention /usr/local/include - which is where my pcre.h is?

Still working with the source, I tried:
$ env -v "LDFLAGS=-L/usr/local/lib -L/usr/local/include
-rpath=/usr/lib:/usr/local/lib:/usr/local/include" ./configure
--without-authdaemon --with-authvchkpw
--enable-unicode=iso-8859-1,iso-8859-15,utf-8

which fails with:
<snip>
checking pcre.h usability... yes
checking pcre.h presence... yes
checking for pcre.h... yes
checking pcre/pcre.h usability... no
checking pcre/pcre.h presence... no
checking for pcre/pcre.h... no
checking for pcre.h... (cached) yes
checking for pcre/pcre.h... (cached) no
<snip>
checking for FAMOpen in -lfam... yes
checking for fam.h... (cached) no
configure: WARNING: The development header files and libraries for fam,
configure: WARNING: the File Alteration Monitor, are not installed.
configure: WARNING: You appear to have the FAM runtime libraries installed,
configure: WARNING: so you need to simply install the additional development
configure: WARNING: package for your operating system.
configure: error: FAM development libraries not found.
configure: error: /usr/local/bin/bash './configure' failed for maildir


# locate fam.h
/usr/local/include/fam.h

Furthermore, when using the port, the installation completes without
any warnings, but in
/usr/ports/mail/courier-imap/work/courier-imap-4.1.1/maildir/config.log,
I see:

...
| #include <pcre/pcre.h>
configure:21219: result: no
configure:21223: checking pcre/pcre.h presence
configure:21233: cc -E -I/usr/local/include -I/usr/local/include conftest.c
conftest.c:33:23: pcre/pcre.h: No such file or directory
configure:21239: $? = 1
configure: failed program was:
| /* confdefs.h.  */
...

...so I presume that anything that relies on pcre will fail with the port, too.

After hours of fruitless Googling, I'm completely stuck.  I don't want
to use the port, ignore the error, and have problems later.

Can someone help me out?

With thanks in advance,
boink

PS - I was unable to subscribe to the courier-mta list at Sourceforge
(no confirmation received), hence the post here.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?73cb07950606050541l5ae80462l119bfeba72c3b2fc>