Mail Archives: djgpp/2001/11/12/06:48:20
In a burst of inspiration, "Jeremiah Zanin" <jzanin AT cs DOT unm DOT edu> wrote this
on Sun, 11 Nov 2001 17:26:04 +0100:
> The problem is that somehow the environment variable that gcc gets is
> *different* than the one reported by the "set" command. If I run
> "command.com" instead of "cmd.exe" then the DJGPP environment variable
> is set to "D:\DJGPP\DJGPP.ENV" (the old one) but when I run the "set"
> command gcc still gives the same message and the environment variable
> resets to "D:\DJGPP\DJGPP.ENV", which is strange. I have the win2k
> fixes btw. I think what's happening is that when the subprocesses are
> spawned (through "command.com" and not "cmd.exe"), they are getting a
> set of environment variables from somewhere which I haven't found in
> XP...I'll keep digging.
That is normal behaviour - NT/2K/XP use the command.com environment when
running DOS apps (hence the fact that it resizes the console and removes
the scrollbar). So naturally you get the command.com environment.
What's odd is that they differ. From what I can tell under 2K, it does
change envvars that have long file names to their SFN equivalent for
command.com, but that's not what happens here. It also seems to truncate
long envvars, but again, that's not what happens here.
If you upgraded to XP from a previous version of Windows, it might be
that it picked up the old setting. You could try running msconfig.exe
(still exists in XP), but I'm not sure if that still has the environment
tab under XP.
Otherwise, run regedit.exe and Edit/Search for keys that have D:\DJGPP.
Unless you feel comfortable changing the registry yourself, don't do
anything with the keys you find (if any); simply post a list here.
BTW - you don't need to reboot after changing the environment from the
system properties. Just open a new console and it will have the new
environment settings.
- Raw text -