kolb@nisc.nyser.net (christopher kolb) (12/07/89)
recently i tried installing g++/libg++ 1.36.1. g++ wasn't a problem. libg++ also compiled just fine. when i try to test libg++ ('make tests') i get complaints about undefined symbols. the symbols are ___CTOR_LIST__ and ___DTOR_LIST__. these are defined in gnulib3.c (libg++/src) as externs. after searching for the actual declarations, i see that the loader somehow secretly knows about these symbols... i think. when i define NO_GNULIB3 and rebuild libg++.a from scratch, i get complaints about ___main being undefined. has anyone ever seen this before? how do i fix this? also... the HINTS file in the g++ distribution states that as of 1.36, g++ does not automatically link in libg++, yet g++ (or ld++) complains about not finding libg++.a (when libg++.a isn't installed). so i can't use g++ until libg++ (or whatever...) is fixed. if it matters, this is on a Sun3 running SunOs 4.0.3. down below is the output from 'make tests'... thanks!, chris ps: also, forgive me if this one has been addressed already. we were off the 'usenet' air for a brief while and consequently lost some news... ----- [kolb @nisc] % make tests (cd tests; make checktests GXX="g++" GXXFLAGS=" -I/usr/share/src/gnu/libg++/g++-include -g -O -fstrength-reduce -felide-constructors -fschedule-insns -fdelayed-branch -fsave-memoized -Wall " GXXLDFLAGS="-L/usr/share/src/gnu/libg++/src -lg++ -lm " LIBDIR="/usr/local//lib/" SRCIDIR="/usr/share/src/gnu/libg++/g++-include" CC="gcc" CFLAGS=" -I/usr/local//lib/gcc-include -I/usr/include -I/usr/share/src/gnu/libg++/g++-include -g -O -fstrength-reduce -fdelayed-branch -Wall " RANLIB="ranlib" LDXX="/usr/local// lib//gcc-ld" GXXCRT1="/usr/local//lib//crt1+.o" MAKE="make" prefix="/usr/local/") g++ test.hello.o -L/usr/share/src/gnu/libg++/src -lg++ -lm -o test0 gnulib3.c:48: Undefined symbol ___DTOR_LIST__ referenced from text segment gnulib3.c:72: Undefined symbol ___CTOR_LIST__ referenced from text segment gnulib3.c:74: Undefined symbol ___CTOR_LIST__ referenced from text segment *** Error code 1 make: Fatal error: Command failed for target `test0' Current working directory /usr/share/src/gnu/libg++-1.36.1/tests *** Error code 1 make: Fatal error: Command failed for target `tests' [kolb @nisc] %