Gilles Detillieux (email@example.com)
Fri, 18 Jun 1999 10:25:58 -0500 (CDT)
According to x y (a.k.a. Didier Claverie):
> I try to compile ht://Dig 3.1.2 under Solaris 2.5.1 with gcc 22.214.171.124
> I have just compiled and installed libg++ 2.7.2 successfully
> (basically, in /usr/local) from the sources availiable at
> I have the following error :
> iris(root)/export/home/cetw/taf/htdig-3.1.2> make
> gcc -o htfuzzy -L../htlib -L../htcommon -L../db/dist -L/usr/lib
> Endings.o EndingsDB.o Exact.o Fuzzy.o Metaphone.o Soundex.o
> SuffixEntry.o Synonym.o htfuzzy.o Substring.o Prefix.o
> ./htcommon/libcommon.a ../htlib/libht.a ../db/dist/libdb.a -lnsl
> Undefined first referenced
> symbol in file
> cout EndingsDB.o
> _vt.7istream.3ios ../htlib/libht.a(Configuration.o)
> write__7ostreamPCci ../htlib/libht.a(String.o)
> _._8ifstream ../htlib/libht.a(Configuration.o)
> endl__FR7ostream EndingsDB.o
> cerr Prefix.o
> __ls__7ostreamPCv ../htlib/libht.a(String.o)
> __ls__7ostreamPCc EndingsDB.o
> getline__7istreamPcic ../htlib/libht.a(Configuration.o)
> __ls__7ostreamc EndingsDB.o
> __ls__7ostreami EndingsDB.o
> close__11fstreambase ../htlib/libht.a(Configuration.o)
> _vt.8ifstream.3ios ../htlib/libht.a(Configuration.o)
> __11fstreambaseiPCcii ../htlib/libht.a(Configuration.o)
> flush__7ostream EndingsDB.o
> _vt.3ios ../htlib/libht.a(Configuration.o)
> ld: fatal: Symbol referencing errors. No output written to htfuzzy
> *** Error code 1
> make: Fatal error: Command failed for target `htfuzzy'
> Current working directory /export/home/cetw/taf/htdig-3.1.2/htfuzzy
> *** Error code 1
> make: Fatal error: Command failed for target `all'
> I read in the FAQ there could be some pb with libht.a, but considering
> I just installed the libg++ ...
> (correct me if I'm wrong, but I understood that libstdc++ was included
> in libg++)
Both are C++ libraries. I believe libstdc++ is the newer one that comes
with egcs, while libg++ comes with the older g++ compiler. Your problem
looks a lot like the one reported just yesterday by Dan Anoaica, which
he ran into on an HP-UX system. Here's what I told him:
Something must have gone wrong during the configure step. For some reason,
the Makefile is trying to use gcc, rather than c++ or g++, to link together
C++ modules. The errors from ld are happening because it's not looking
through your C++ library for the missing objects.
Someone please correct me if I'm wrong, but I don't think gcc will ever
look for the C++ library, whether it's libg++ or libstdc++. In this
case, why is configure setting up the Makefiles to use gcc to link
(and compile?) C++ code, when it should be using another command?
(retorical question, but one that I wouldn't mind hearing an answer to,
if someone knows)
I suspect that both you and Dan are running installations of C++ that
are somehow non-standard, and configure is having problems with them.
The other possibility may be that your "make" program is not dealing
with the Makefiles properly. Have you tried GNU make?
-- Gilles R. Detillieux E-mail: <firstname.lastname@example.org> Spinal Cord Research Centre WWW: http://www.scrc.umanitoba.ca/~grdetil Dept. Physiology, U. of Manitoba Phone: (204)789-3766 Winnipeg, MB R3E 3J7 (Canada) Fax: (204)789-3930 ------------------------------------ To unsubscribe from the htdig mailing list, send a message to email@example.com containing the single word "unsubscribe" in the SUBJECT of the message.
This archive was generated by hypermail 2.0b3 on Fri Jun 18 1999 - 07:46:53 PDT