Trying to build crm114 (20050721) under CygWin 1.5.18-1
Gerrit P. Haase
gerrit@familiehaase.de
Fri Aug 19 16:22:00 GMT 2005
Herb Martin wrote:
>>>cannot find -ltre
>>>collect2: ld returned 1 exit status
>>>make[1]: *** [crm114_tre] Error 1
> LDFLAGS += -L/usr/local/lib
> LIBS += -ltre -lintl -liconv
> (and trying -ltre at the end; is THIS the order
> you were referencing?)
>
> The dependency tha that is failing looks like this:
>
> crm114_tre: $(OFILES) crmregex_tre.o
> # Note: if you haven't installed TRElib, the next step
> # will get an error.
> # For TRElib, look in the TRE sub-directory of this kit.
> # Remember to use ./configure --enable-static for static libs.
> # You will also need to add /usr/local/lib to /etc/ld.so.conf,
> # and then run ldconfig (as root) to set the library up and make
> # the library known to the static and runtime linkers.
> $(CC) $(LDFLAGS) $(LIBS) $(OFILES) \
> crmregex_tre.o \
> -lm -ltre -o crm114_tre
This is wrong. Try this instead:
$(CC) $(LDFLAGS) $(OFILES) \
crmregex_tre.o \
-ltre $(LIBS) -o crm114_tre
> My tre libs looks like this:
>
> $ d /usr/local/lib/*tre*
> rw-r--r-- herbm:None 349K Aug 18 21:29 libtre.a
> rwxr-xr-x herbm:None 789 Aug 18 21:29 libtre.la
Then you should go with the settings as you posted above:
LDFLAGS += -L/usr/local/lib
LIBS += -lintl -liconv
> $ d ./tre-0.7.2/lib
> rw-r--r-- herbm:None 18K Aug 18 19:34 Makefile
> rwxr-xr-x herbm:None 707 Dec 10 2004 Makefile.am
> rwxr-xr-x herbm:None 19K Dec 11 2004 Makefile.in
> rwxr-xr-x herbm:None 3K Apr 24 2004 gettext.h
> rw-r--r-- herbm:None 788 Aug 19 05:58 libtre.la
> rwxr-xr-x herbm:None 2.7K Nov 21 2004 readme
Here is no library. Just the libtool .la helper file.
> Current error looks like this:
[snip]
> gcc -static -L./tre-0.7.2/lib -L/usr/local/lib -ltre -lintl -liconv
> *.o \
> -lm -ltre -o crm114_tre
> /usr/local/lib/libtre.a(regerror.o): In function `regerror':
> /etc/mail/spamassassin/crm114-20050721-BlameNeilArmstrong.src/tre-0.7.2/lib/
> regerror.c:68: undefined reference to `_libintl_gettext'
> collect2: ld returned 1 exit status
> make[1]: *** [crm114_tre] Error 1
Change the Makefile so that $LIBS are at the end behind the objects
and libtre as noted above since libtre reqwuires libintl and the
linker reads command lines from right to left.
Gerrit
--
=^..^=
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
More information about the Cygwin
mailing list