Re: what libc+compiler is in use for development?

Steve Dodd (dirk@loth.demon.co.uk)
Sun, 18 Jul 1999 16:14:07 +0100


On Sun, Jul 18, 1999 at 03:27:57PM +0100, Dmitry Veprintsev wrote:

> after reading the list for some time, i still be a bit confised:
> to compile the kernel i should use gcc 2.7.2.3

Yup. egcs /generally/ works, but you won't get so much sympathy if something
breaks. If you must use it, grab the 1.1.2 release (egcs-2.91.66); IIRC earlier
versions had bugs. Later versions may also cause problems: the (pre-??)
versions of gcc-2.95 that are floating around apparently cause problems if
you don't use -fno-strict-aliasing; I don't know if they're OK if you do use
that flag.

Specifically, there's a nasty warning for IDEDMA_NEW_DRIVE_LISTINGS in
Configure.help about using egcs; I haven't risked it :)

> the original config of the kernel tarball (2.2.*) (ie, Linus config, i
> guess), shows the Unix98 pty, and this need glibc 2.1, but they do not
> compile with gcc 2.7.2.3 (egcc is recomended).

You don't have to use the Unix98 ptys if you don't want to; just turn them
off. I do.

If you do want to do the business, here's the set-up I have.

I installed gcc-2.7.2.3 first; the actual compiler gets thrown in
/usr/lib/gcc-lib/<arch>/2.7.2.3/, and the frontend /usr/bin/gcc runs this
version by default.

Then I installed egcs-2.91.66, which went in
/usr/lib/gcc-lib/<arch>/egcs-2.91.66/. This installs a frontend (/usr/bin/gcc,
overwriting your old one), which runs egcs by default.

You can simply say gcc -V2.7.2.3 ..... to get the frontend to invoke the old
version of the compiler; to build the kernel just change the CFLAGS line in
the top-level Makefile to include the -V option.

Alternatively, you can back-up your /usr/bin/gcc before installing egcs, and
then rename one or both of the frontends. You could keep the gcc 2.7.2.3
front end as /usr/bin/gcc, and rename the egcs one to /usr/bin/egcs. Then
you have to change the CC= lines in Makefiles for anything you want to build
with egcs.

I hope that made sense :)

-- 
Eagles may soar, but weasels aren't sucked into jet engines.

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/