From: strags11 AT yahoo DOT com (Nick) Newsgroups: comp.os.msdos.djgpp Subject: Re: Simple (?) problem with djgpp/gcc/make Date: 2 Jun 2003 20:06:11 -0700 Organization: http://groups.google.com/ Lines: 138 Message-ID: <1ba37fef.0306021906.52b96029@posting.google.com> References: <1ba37fef DOT 0306010650 DOT 10517f99 AT posting DOT google DOT com> <6137-Sun01Jun2003200228+0300-eliz AT elta DOT co DOT il> <1ba37fef DOT 0306011651 DOT 4dfb06ed AT posting DOT google DOT com> <3995-Mon02Jun2003065843+0300-eliz AT elta DOT co DOT il> NNTP-Posting-Host: 151.204.11.162 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-Trace: posting.google.com 1054609571 15185 127.0.0.1 (3 Jun 2003 03:06:11 GMT) X-Complaints-To: groups-abuse AT google DOT com NNTP-Posting-Date: 3 Jun 2003 03:06:11 GMT To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com "Eli Zaretskii" wrote in message news:<3995-Mon02Jun2003065843+0300-eliz AT elta DOT co DOT il>... Eli, thanks in advance for all your help on this. Results of the tests you requested are below. Nick > What exactly is your PATH setting? Please type "PATH" from the DOS > box's prompt, hit [Enter], and post here the result. Hmmm...Here is my path setting from the DOS command prompt. Note that DJGPP\BIN is where it needs to be. (It is all one line of course, but I broke it into several lines below for readability): PATH=c:\djgpp\bin;C:\WINDOWS\system32;C:\WINDOWS; C:\WINDOWS\COMMAND;C:\;C:\CDROM;C:\BRCD\BIN; C:\BRCD\COMMAND;C:\WINDOWS\system32\WBEM Then, for laughs, I added "path" as an action to my hello.o build rule, expecting to see the same result. I didn't: PATH=C:\BRCD\COMMAND;C:\BRCD\BIN;C:\CDROM;C:\; C:\WINDOWS\COMMAND;C:\WINDOWS;C:\WINDOWS\system32 I have no idea where this crazy path is coming from. I checked the two obvious places: the environment variables dialog in my System control panel icon, and my autoexec.bat file. The definition of PATH in my System environment variables is what I expected it to be: Name: Path Value: c:\djgpp\bin;%SYSTEMROOT%\system32;%SYSTEMROOT%; %SYSTEMROOT%\COMMAND;C:\;C:\CDROM;C:\BRCD\BIN; C:\BRCD\COMMAND;%SYSTEMROOT%\system32\WBEM (Note: This is the global definition, and there is no override defined for my own login account.) ...but, the PATH declaration in my autoexec.bat is yet another string: SET PATH=C:\WINDOWS;C:\WINDOWS\COMMAND;C:\; C:\CDROM;C:\BRCD\BIN;C:\BRCD\COMMAND Observe that, with the exception of my System32 directory, the autoexec string is exactly the reverse of the one returned from the PATH command in the makefile. Clearly the path is the problem, because the makefile (see below) fails on the "gcc -v" step; as you surmised, it's not finding gcc at all. I still don't understand why the all-caps ECHO doesn't work, though. To answer your next question: No, I did nothing unusual in configuring my system. It is a basic, vanilla Windows XP upgrade. > Also, add a line saying just "set" to your Makefile, and post here > what it prints. I presume you mean to do this as an action in a rule. I did this and the results are at the end of the message. Too long to list it inline. > What do you see if you go to the DJGPP's `bin' directory and type > "dir gcc*"? Nothing out of the ordinary. Just: 04/30/2003 07:10 PM 161,792 gcc.exe > Does it help to replace "gcc" with "GCC" in your Makefile? Nope. Nick --- RESULT OF RUNNING "set" FROM WITHIN MAKEFILE --- SYSTEMDRIVE=C: TEMP=C:\WINDOWS\TEMP HOMEDRIVE=C: SHELL=C:\WINDOWS\SYSTEM32\COMMAND.COM EMU387=c:/djgpp/bin/emu387.dxe GO32STUB=c:/djgpp/bin/stubify.exe LFN=y PROMPT=$P$G COMPUTERNAME=OWL2 USERNAME=Nick APPDATA=C:\DOCUME~1\Nick\APPLIC~1 USERPROFILE=C:\DOCUME~1\Nick COMMONPROGRAMFILES=C:\PROGRA~1\COMMON~1 TEXMFMAIN=c:/djgpp/share/texmf PROCESSOR_ARCHITECTURE=x86 PATH=C:\BRCD\COMMAND;C:\BRCD\BIN;C:\CDROM;C:\;C:\WINDOWS\COMMAND;C:\WINDOWS;C:\W INDOWS\system32 PROGRAMFILES=C:\PROGRA~1 OS=Windows_NT NUMBER_OF_PROCESSORS=1 WINBOOTDIR=C:\WINDOWS WINDIR=C:\WINDOWS PROCESSOR_REVISION=0803 MFLAGS= LOGONSERVER=\\OWL2 USER=dosuser SESSIONNAME=Console ALLUSERSPROFILE=C:\DOCUME~1\ALLUSE~1 SYSTEMROOT=C:\WINDOWS TMPDIR=c:/djgpp/tmp MAKEFLAGS= PROCESSOR_LEVEL=6 USERDOMAIN=OWL2 DJGPP=c:\djgpp\djgpp.env LANG=en_US COMSPEC=C:\WINDOWS\SYSTEM32\COMMAND.COM DJDIR=c:/djgpp PROCESSOR_IDENTIFIER=x86 Family 6 Model 8 Stepping 3, GenuineIntel GROUP=root TMP=C:\WINDOWS\TEMP PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH HOMEPATH=\Documents and Settings\Nick BLASTER=A220 I5 D1 P330 T3 MAKELEVEL=1 ---- END OF "set" RESULTS ---- ---- THE ACCURSED MAKEFILE NOW READS: ---- hello.o : hello.c set echo x ECHO y gcc -v echo z GCC -c hello.c (note: tabs replaced with spaces for Usenet) ---- END OF MAKEFILE --------------------- ---- RESULTS OF RUNNING MAKEFILE --------- set echo x x ECHO y make.exe: *** [hello.o] Error -1 ------------------------------------------