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 2.7.2.3 > I have just compiled and installed libg++ 2.7.2 successfully > (basically, in /usr/local) from the sources availiable at > sunfreeware.com > > 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 > -lsocket > 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: <[EMAIL PROTECTED]> 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 PROTECTED] containing the single word "unsubscribe" in the SUBJECT of the message.
