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] %