Article View: gnu.gcc.help
Article #764Re: gcc include directories
From: Per Abrahamsen
Date: Wed, 16 Dec 1992 11:08
Date: Wed, 16 Dec 1992 11:08
96 lines
4677 bytes
4677 bytes
>>>>>> On Fri, 4 Dec 1992 23:12:55 GMT, bothner@Xenon.Stanford.EDU (Per >>>>>> M. Bothner) said: Bothner> I doubt Cygnus is to blame. We would just as soon change it, Bothner> but Stallman likes it the way it is. (Specifically, we find Bothner> a directory for the version number useless.) In article <ABRAHAM.92Dec7191319@loke.iesd.auc.dk> abraham@iesd.auc.dk (Per Abrahamsen) writes: Abraham> Please, the version number directory is very useful. It Abraham> allows us to install new versions without removing the old Abraham> version. >>>>> On Thu, 10 Dec 1992 03:35:42 GMT, bothner@Xenon.Stanford.EDU >>>>> (Per M. Bothner) said: Bothner> Let me clarify my point: Being able to choose easily between Bothner> multiple installed versions is very useful. So useful that Bothner> it should perhaps not be restricted to the compiler! It seldom gives problems with the other utilities, as the data format of the files they manipulate stay reasonable constant. Not so with g++. Bothner> The -V flag seems rather peculiar: Bothner> * You can't use the -V flag to select a different version of the gcc Bothner> program itself. Granted. But it has not given any problems with the any of the gcc2 versions yet. Bothner> * You can only use the -V flag to select versions of things that Bothner> get installed by the compiler. You can't use it to select different Bothner> versions of the assembler, or the linker, or the C libraries, at Bothner> least as things are normally installed. This is partly because Bothner> the version number is specific to gcc, and none of the other tools Bothner> can use it. The assembler, the linker, and the C libraries goes into $GNUHOME/lib/gcc-lib/$ARCH/$VERS This is the first place gcc search for them. It works very well. The only problem today is that libg++ for some reason is not assumed to be in that directory, both the gcc and the libg++ distribution seems to expect that all versions of gcc will share the same version of libg++. This is a pain, and we have to change both by hand to correct the situation. Bothner> * Using a -V flag can't be used to select different versions of Bothner> other GNU utilities (i.e. switching between emacs 18 and 19), Bothner> which is potentially just as useful. It is less important with tools like emacs, we will probably never have more than two versions of emacs installed. After all, both emacs 18 and 19 manipulates text files, and their format does not (I hope!) change. We have 4 versions of g++1 and 5 versions of gcc2 installed (tree official versions and two local modifications). Bothner> The more general (and standard) way to select versions is by Bothner> installing different versions into different directories. Bothner> One simple mechanism: Bothner> /new/bin - new releases Bothner> /usr/bin - standard (default) version Bothner> /old/bin - old obsolete version And break object (and possibly source) code compatibility for all users when we install a new version of g++? The users of /new/bin/g++ and /usr/bin/g++ would need to edit their paths, and what would the users of /old/bin/g++ do? Upgrade their code is not an acceptable answer here. Bothner> Because gcc is not just a simple binary, and so running gcc involves Bothner> a whole slew of programs and libraries, it is a little more Bothner> involved to install it than just installing into /new/bin. Bothner> But not a lot. To install a new gcc version in /new/bin you could: Bothner> configure sun4 --prefix=/gnu/gcc-VERSION Bothner> make all install Bothner> ln /gnu/gcc-VERSION/bin/gcc /new/bin/gcc Bothner> (Here VERSION can be any identifier chosen by the installer.) We are several people who install gcc related software, and having a standard name scheme make it easier to ensure that we use the same conventions. gcc2 also support arbitrary version identifiers, a fact we use for our local hacked versions.
Technical Details
Message-ID:
<ABRAHAM.92Dec16110802@loke.iesd.auc.dk>Path:
arc1-ca.pugleaf.net!sparky!uunet!mcsun!sunic!dkuug!iesd.auc.dk!news.iesd.auc.dk!abrahamReferences:
<PCG.92Nov30134606@aberdb.aber.ac.uk> <1992Dec4.231255.25814@CSD-NewsHost.Stanford.EDU> <ABRAHAM.92Dec7191319@loke.iesd.auc.dk> <1992Dec10.033542.2080@CSD-NewsHost.Stanford.EDU>Show Full Headers
Complete Article Headers
Newsgroups: gnu.gcc.help,gnu.g++.help,gnu.misc.discuss Path: arc1-ca.pugleaf.net!sparky!uunet!mcsun!sunic!dkuug!iesd.auc.dk!news.iesd.auc.dk!abraham From: abraham@iesd.auc.dk (Per Abrahamsen) Subject: Re: gcc include directories In-Reply-To: bothner@Xenon.Stanford.EDU's message of Thu, 10 Dec 1992 03:35:42 GMT Message-ID: <ABRAHAM.92Dec16110802@loke.iesd.auc.dk> Sender: news@iesd.auc.dk (UseNet News) Organization: CS@AUC, Denmark References: <PCG.92Nov30134606@aberdb.aber.ac.uk> <1992Dec4.231255.25814@CSD-NewsHost.Stanford.EDU> <ABRAHAM.92Dec7191319@loke.iesd.auc.dk> <1992Dec10.033542.2080@CSD-NewsHost.Stanford.EDU> Date: 16 Dec 92 11:08:02 Lines: 96