Problems with gcc 2.95.2 build on HP-UX 10.20/11.00
Richard Lloyd
rkl@connect.org.uk
Wed Nov 3 06:51:00 GMT 1999
I've just finally managed to build gcc 2.95.2 on HP-UX 10.20 and 11.00
(Series 700 workstation) and came across various problems you might
like to look into for the next release:
* "make bootstrap" fails during the stage2 re-build because gcc-built
.o files are re-linked with HP's cc (giving an "__main not found"
error). "make" and "make install" (which doesn't do the extra
stages) work OK though. I have set CC=cc and CFLAGS to " " to
build the first page ("stage0"?) with the native HP-UX cc.
Unfortunately, I can't remember exactly which source file it
falls over on (takes about 3 hours to find it out because I have
to rebuild from scratch to see it !).
* "make clean" doesn't seem to delete all the binaries/objects that
are built. Stuff not cleaned included the whole of the hppa* tree
(aka $(target_alias)), gcc/fixinc/*.o, gcc/fixinc/fixincl and
gcc/fixincl.
* Many installed files/directories do not have world-read permissions,
rendering them inacessible to anyone but the user that performed the
installation. My solution was to chmod a+r all non-soft-links in
the install tree.
* Many installed files/directories have "old" timestamps (i.e. they are
mv'ed/cpio'ed from the source tree), which causes problems when
trying to determine exactly which files have been installed
(we use timestamps to find out the installed files, so we can
package them up in a binary depot for HP-UX). My solution was to
touch all non-soft-links in the install tree.
* Why is CFLAGS set to -g in gcc/Makefile.in ? Shouldn't the configure
system pass this via @CFLAGS@ ? Similarly, I don't understand why
CFLAGS = -g in gcc/cp/Makefile.in either.
* INCLUDES in gcc/Makefile.in needed -I$(srcdir)/cp/inc adding because
some of the files in there are used during the build.
* It appears that fixinc.sh can be called without having built fixincl
(in the gcc dir, not the gcc/fixinc dir) first, which causes it
to fail. A dependency in gcc/Makefile.in is needed to resolve this.
* XCXXINCLUDES in libstdc++/configure.in needs
$(srcdir)/$(TO_TOPDIR)../gcc/cp/inc adding because some files in there
are used.
* libstdc++/cmath has an abs() definition clash with HP-UX's <math.h>
I had to put #ifndef __hpux...#endif around any attempts in cmath
to declare abs().
* texinfo shipped is version 3.12, but the latest release is 4.0.
Does texinfo really need to be shipped with gcc though ? It might
be better to tell users to get and install it separately.
I can supply more details on any of these problems (all of which -
apart from "make bootstrap" - I've fixed in various ways) if required
[please reply to me directly as well as any mailing list] - you can
check out our HP-UX port of gcc 2.95.2 here:
http://hpux.connect.org.uk/hppd/hpux/Gnu/gcc-2.95.2/
On a slightly separate note, are there plans to release a new binutils
to go with the gcc 2.9X series ? I can see that there's active
development going on here:
ftp://sourceware.cygnus.com/pub/binutils/snapshots/
but the last "official" GNU release was 2.9.1 way back in May 1998 !
The Cygnus gas apparently supports PA-RISC 2.0, which is why I'm keen
to see a new official GNU release of binutils :-)
Richard K. Lloyd,
HP-UX Archive Librarian, E-mail queries: hpux@connect.org.uk
Computer Science Dept., Official HP-UX Archive WWW sites:
Liverpool University, United Kingdom: http://hpux.connect.org.uk/
United Kingdom. Germany:
http://hpux.ask.uni-karlsruhe.de/
United States: http://hpux.cae.wisc.edu/
[Wisconsin]
France: http://hpux.cict.fr/
Netherlands: http://hpux.tn.tudelft.nl/
Canada: http://hpux.ee.ualberta.ca/
Italy: http://hpux.dsi.unimi.it/
United States: http://hpux.cs.utah.edu/
[Utah]
South Africa: http://hpux.petech.ac.za/
Japan: http://hpux.u-aizu.ac.jp/
More information about the Gcc-bugs
mailing list