J. David Bryan wrote:
On 10 Nov 2001, at 5:46, Frank Heckenbach wrote:
The proper things to do, as far the "GCC philosophy" is concerned, is to install the matching GCC version. Period.
But the issue with respect to Cygwin is that there *is* no matching version. Cygwin doesn't provide a gcc-2.95.3, only a gcc-2.95.3-1, -2, etc. These versions include patches necessary to get GCC to build on Cygwin (I presume -- I haven't tried to build the FSF version of gcc- 2.95.3, but I can think of no other reason why Cygnus would want to maintain a version separate from the FSF version). So unless GPC is going to start providing patches to the Cygnus "dash versions" of the GCC sources, so that GPC can be built on gpc-2.95.3-x, there cannot be matching versions of GPC and GCC under Cygwin.
Or you could try to apply the patches yourself. However, if GPC builds without the patches, also GCC does, since a GPC build includes an (almost) complete GCC build.
All of copying/linking the missing files, setting any environment variables, or using special options is "fixing a broken installation".
I would argue that it's much too restricted a view to call any installation that relies on environment variables or special options "broken." Surely if that's the GCC view, then why provide these variables and options at all? Is it broken if I install a cross-compiler and therefore need to use the "-b" option?
No, I don't mean `-b' and `-V'. They have a specific purpose, and as I said in another mail, I don't think they'll help here since they'll change the single "preferred" directory for GPC to search things.
Is it broken if I choose to use a more reasonable directory structure under Windows (where "/usr" has no meaning) and therefore need to use environment variables?
You don't. Just set prefix in the configure correspondingly:
Prof Abimbola Olowofoyeku wrote:
Perhaps because, on many systems, users do not have write access to the "/usr" directory - and, in such cases, unless they can convince the sys admins to install stuff for them, they will be stuck.
Not at all. I've installed many GPCs in my home directories on Solaris, AIX and IRIX systems lately (and probably OSF next week :-). All configured with --prefix=$HOME/usr and no further problems with the dirs.
To sum up things up to here:
You want a way by setting an environment variable. I said there's a way by setting two variables -- if there's any problem with it, please say so (or if you did, I must have missed it in the flood) ...
Various other, more involved, ways like patching things and using scripts, have been discussed which seem like overkill to me.
The root of the problem seems to be the use of a patched GCC and a non-GCC-patched GPC (without installing the non-patched GCC in parallel). This is a "broken" GPC installation.
You can avoid this (don't use the patched GCC, install two GCCs, try to install a GCC-patched GPC, ...), or you can use the environment variables provided for such "broken" installations ...
So ... what's the problem, anyway?
Frank