This is the mail archive of the
cygwin
mailing list for the Cygwin project.
RE: Trying to build crm114 (20050721) under CygWin 1.5.18-1
- From: "Herb Martin" <HerbM at learnquick dot com>
- To: <cygwin at cygwin dot com>
- Date: Fri, 19 Aug 2005 09:36:52 -0500
- Subject: RE: Trying to build crm114 (20050721) under CygWin 1.5.18-1
Thanks to everyone who offered a suggestion -- I don't
have crm114 building yet, but I at least feel like I
am BEGINNING to understand the link (not well enough
however.)
> From: Gerrit P. Haase [mailto:gerrit@familiehaase.de]
> > regerror.c:68: undefined reference to `_libintl_gettext'
> > collect2: ld returned 1 exit status
> The above error just means that you'r missing libintl at your
> link command, try to add -lintl to the Makefile where appropriate.
Will do. (If I can figure out where.)
There is a /bin/cygintl.dll, and in /lib there are:
libintl.a libintl.dll.a libintl.la
If I change -L/usr/local/lib to -L/usr/local/lib:/lib
the problem moves to "-ltre"; if I leave out the :/lib
or try to use a separate -L/lib then the errors messages
references libintl again. (Obviously, I am just flailing,
trying each combination.)
gcc -static -L/usr/local/lib:/lib -lintl -liconv crm_main.o crm_compiler.o
crm_errorhandlers.o crm_exec_engine.o crm_p
reprocessor.o crm_var_hash_table.o crm_math_exec.o crm_expandvar.o
crm_stmt_parser.o crm_expr_alter.o crm_expr_match.o c
rm_css_maintenance.o crm_markovian.o crm_osb_bayes.o crm_osb_hyperspace.o
crm_correlate.o crm_osb_winnow.o crm_winnow
_maintenance.o crm_osbf_bayes.o crm_osbf_maintenance.o crm_expr_window.o
crm_expr_isolate.o crm_expr_file_io.o crm_expr
_syscall.o crm_expr_classify.o crm_debugger.o crm_str_funcs.o \
crmregex_tre.o \
-lm -ltre -o crm114_tre
/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/bin/ld: cannot
find -ltre
collect2: ld returned 1 exit status
make[1]: *** [crm114_tre] Error 1
make[1]: Leaving directory
`/etc/mail/spamassassin/crm114-20050721-BlameNeilArmstrong.src'
make: *** [crm114] Error 2
Or: (leave out the :/lib or try to use a separate -L/lib)
gcc -static -L/usr/local/lib -lintl -liconv crm_main.o crm_compiler.o
crm_errorhandlers.o crm_exec_engine.o crm_prepro
cessor.o crm_var_hash_table.o crm_math_exec.o crm_expandvar.o
crm_stmt_parser.o crm_expr_alter.o crm_expr_match.o crm_cs
s_maintenance.o crm_markovian.o crm_osb_bayes.o crm_osb_hyperspace.o
crm_correlate.o crm_osb_winnow.o crm_winnow_mainten
ance.o crm_osbf_bayes.o crm_osbf_maintenance.o crm_expr_window.o
crm_expr_isolate.o crm_expr_file_io.o crm_expr_syscall
.o crm_expr_classify.o crm_debugger.o crm_str_funcs.o \
crmregex_tre.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 `_libi
ntl_gettext'
collect2: ld returned 1 exit status
> There are ready to use TRE packages. E.g. here:
> ftp://sunsite.dk/projects/cygwinports/release/tre/
TRE makes and tests just fine. Do you think that TRE
is (the cause of) the linking problem or just the target?
> From Dave Korn
> Or perhaps giving the --disable-nls option to configure
> would also fix it?
crm114 doesn't use configure. Did you intend this
for TRE (which doesn't seem [to me] to be the cause
of the problem.)
> > fix this you must edit /etc/ld.so.conf to include
> > /usr/local/lib, and then run ldconfig.
> ld.so.conf and ldconfig are aspects of the Linux dynamic
> linker. There is no such thing under Windows or Cygwin, so
> those instructions are meaningless.
And since the TRE is set to static (by configure instruction
when TRE is made), TRE shouldn't be the problem. ???
> The closest equivalent
> is to ensure that the installed DLL is in the path. This
> normally means that if you configured with
> --prefix=/usr/local (the default) that you should get a
> cyg<whatever>.dll in /usr/local/bin and hence you need
> /usr/local/bin in the path. Only static libraries and import
> libraries go in /usr/local/lib, and these do not need to be
> in the path.
So, as I understand it, the TRE libs in /usr/local/lib
make sense, correct?
--
Herb Martin
--
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/