SHELL on W2K (gmake 3.79.1) is cmd.exe not /bin/sh

Parish parish@ntlworld.com
Wed Mar 12 17:49:00 GMT 2003


Igor Pechtchanski wrote:
> <http://cygwin.com/cygwin-ug-net/using-utils.html#MKGROUP>
> <http://cygwin.com/cygwin-ug-net/using-utils.html#MKPASSWD>

I guess that you are saying that make uses /etc/passwd when setting SHELL?

I checked on my system and I do have /etc/passwd and /etc/group so I 
guess I must have run them (it's along time since I installed cygwin).

However, I did try renamimg them, starting a new cygwin shell and 
running make, and SHELL was still set to /bin/sh.exe

Regards,

Parish

> 	Igor
> 
> On Wed, 12 Mar 2003, Parish wrote:
> 
>> Drash, Jim [NCSUS] wrote:
>> > did you run a mkpasswd and mkgroup on this person's machine post install?
>>
>> Not as far as I am aware. I certainly didn't on my system. What effect
>> does/should this have?
>>
>> Regards,
>>
>> Parish
>>
>> > -----Original Message-----
>> > From: Parish [mailto:parish@ntlworld.com]
>> > Sent: Wednesday, March 12, 2003 10:39 AM
>> > To: cygwin@cygwin.com
>> > Subject: SHELL on W2K (gmake 3.79.1) is cmd.exe not /bin/sh
>> >
>> >
>> > I am trying to help someone get Mozilla building on W2K but we can't get
>> > it to work because, it appears, the value of SHELL is being set to
>> > cmd.exe (i.e. COMSPEC). It is being run from the cygwin bash shell.
>> >
>> > My setup works fine so I am looking for differences. I got him to run
>> > make with -p and send me the output. The relevant bits from this are:
>> >
>> > # GNU Make version 3.79.1, by Richard Stallman and Roland McGrath.
>> > # Built for i686-pc-cygwin
>> > # Copyright (C) 1988, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 2000
>> > #       Free Software Foundation, Inc.
>> >
>> > # environment
>> > COMSPEC = C:\WINNT\system32\cmd.exe
>> >
>> > # environment
>> > PATHEXT = .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH
>> >
>> > # makefile
>> > SHELL = C:/WINNT/system32/cmd.exe
>> >
>> > # makefile
>> > MAKEFLAGS =  --win32 -p
>> >
>> > # environment
>> > PATH = /usr/local/bin:/usr/bin:/bin:/cygdrive/c/WINNT/system32:
>> > /cygdrive/c/WINNT:/cygdrive/c/WINNT/System32/Wbem:
>> > /cygdrive/c/Progra~1/Microsoft SQL Server/80/Tools/BINN:
>> > /cygdrive/d/Projects/Perl/bin/:/cygdrive/d/projects/nasm:
>> > /cygdrive/d/Projects/MozTools/bin:/bin:/cygdrive/d/Projects/WinCvs:
>> > /cygdrive/c/util:/cygdrive/d/Progra~1/Resource Kit/:
>> > /cygdrive/d/Progra~1/Micros~1/Common/Tools/WinNT:
>> > /cygdrive/d/Progra~1/Micros~1/Common/MSDev98/Bin:
>> > /cygdrive/d/Progra~1/Micros~1/Common/Tools:
>> > /cygdrive/d/Progra~1/Micros~1/VC98/bin:/usr/X11R6/bin
>> >
>> > # environment
>> > MAKE_MODE = unix
>> >
>> > On my system SHELL=/bin/sh and MAKEFLAGS= --unix -p, which is correct.
>> >
>> > The following are in his environment (and matches mine):
>> >
>> > BASH=/bin/bash
>> > BASH_VERSINFO=([0]="2" [1]="05b" [2]="0" [3]="8" [4]="release"
>> > [5]="i686-pc-cygwin")
>> > BASH_VERSION='2.05b.0(8)-release'
>> > COMSPEC='C:\WINNT\system32\cmd.exe'
>> > HOME=/cygdrive/d/Projects
>> > HOSTTYPE=i686
>> > MACHTYPE=i686-pc-cygwin
>> > MAKE_MODE=unix
>> > OPTERR=1
>> > OPTIND=1
>> > OS=Windows_NT
>> > OSTYPE=cygwin
>> > PATH='/usr/local/bin:/usr/bin:/bin:/cygdrive/d/Projects/Perl/bin/:
>> > /cygdrive/c/WINNT/system32:/cygdrive/c/WINNT:
>> > /cygdrive/c/WINNT/System32/Wbem:/cygdrive/c/util:
>> > /cygdrive/d/Progra~1/Resource Kit/:
>> > /cygdrive/c/Progra~1/Microsoft SQL Server/80/Tools/BINN:
>> > /cygdrive/d/Projects/WinCvs:
>> > /cygdrive/d/Progra~1/Micros~1/Common/Tools/WinNT:
>> > /cygdrive/d/Progra~1/Micros~1/Common/MSDev98/Bin:
>> > /cygdrive/d/Progra~1/Micros~1/Common/Tools:
>> > /cygdrive/d/Progra~1/Micros~1/VC98/bin:/cygdrive/d/projects/nasm:
>> > /cygdrive/d/Projects/MozTools/bin:/bin:/usr/X11R6/bin'
>> > PATHEXT='.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH'
>> > PIPESTATUS=([0]="2")
>> > SHELL=/bin/bash
>> > SHELLOPTS=braceexpand:emacs:hashall:histexpand:history:interactive-comments:monitor
>> >
>> > SHLVL=1
>> >
>> > He has sh.exe in /bin (/cygdrive/d/Projects/cygwin/bin). I can reproduce
>> > the problem on my system by renaming sh.exe and he assures me that
>> > typing ''/bin/sh'' at the bash prompt works.
>> >
>> > I've read the section about SHELL in the GNU make manual at
>> > http://www.gnu.org/manual/make/html_chapter/make_5.html#SEC54 and
>> > everything seems to be correct.
>> >
>> > One other thing, probably as a result of SHELL being cmd.exe, is that
>> > some paths in the output from make -p are in quotes, e.g.:
>> >
>> > # makefile (from `client.mk', line 87)
>> > TOPSRCDIR := "/cygdrive/d/Projects/mozilla"
>> >
>> > line 87 in client.mk being:
>> >
>> > TOPSRCDIR := $(shell echo "$(TOPSRCDIR)" | sed -e 's%//%/%')
>> >
>> > I'm stumped. What have I/we missed? Can anyone suggest anything else to
>> > try?
>> >
>> > Thanks.
>> >
>> > Regards,
>> > Parish
> 




--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/



More information about the Cygwin mailing list