www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/1999/06/28/03:33:53

X-Authentication-Warning: ieva01.lanet.lv: pavenis owned process doing -bs
Date: Mon, 28 Jun 1999 10:24:59 +0300 (WET)
From: Andris Pavenis <pavenis AT lanet DOT lv>
To: Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>
cc: "Mark E." <snowball3 AT bigfoot DOT com>, djgpp-workers AT delorie DOT com
Subject: Re: Problems with bash-2.03
In-Reply-To: <Pine.SUN.3.91.990627181852.5761Q-100000@is>
Message-ID: <Pine.A41.4.05.9906281008060.60394-100000@ieva01.lanet.lv>
MIME-Version: 1.0
Reply-To: djgpp-workers AT delorie DOT com
X-Mailing-List: djgpp-workers AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com


On Sun, 27 Jun 1999, Eli Zaretskii wrote:

> 
> On Sat, 26 Jun 1999 pavenis AT lanet DOT lv wrote:
> 
> > Seems that there are still problems with bash-2.03 binaries. Here
> > is way how to reproduce them:
> > 	- if gcc-2.95 prerelease snapshot sources is unpacked on drive 	  
> > 	  different from one where 	DJGPP is installed then make fails in 
> >         directory libiberty.
> 
> Seems like a problem with SHELL = /bin/sh or something like that.  See 
> below.
> 
> >         Binary of make-3.77 from DJGPP distribution even
> >         segfaults (when I rebuilt make with almost current CVS
> >         version of DJGPP then no more segfault, anyway it didn't work)
> 
> Make crashes because of a bug in library function `system' which was 
> fixed in CVS in April.  The bug would raise its ugly head when Make 
> invoked a command that uses pipes and which fails half-way through the 
> pipe.  This typically happens when a command that was supposed to be run 
> by Bash is instead run by the internal emulator of COMMAND.COM, which 
> doesn't understand the syntax of Unixy shell. 
> 
> One case when Make cannot invoke Bash is when something happens to PATH.  
> This causes the "SHELL = /bin/sh" line in a Makefile to be effectively 
> ignored.

Yes it's really seems that problem is with PATH:

	I have my primary DJGPP installation in C:/DJGPP (egcs-1.1.2, etc)
	and for tests I'm using second one in D:/DJGPP (gcc-2.95
	snapshots now). When I built gcc-2.95 snapshots I often simply
	added D:/DJGPP/BIN at begin of path (C:/DJGPP/BIN was initially
	not removed but was after D:/DJGPP/BIN) and of course updated
 	DJGPP environment variable (I have BAT file that does this)

	gcc-2.95 prerelease sources were
	placed on C drive (not under C:/DJGPP, but that doesn't matter)

	When I used old bash-1.14.7 binary all worked Ok. After changing
	to bash-2.03 binary I found that even configure due to unknown
	reason does not find gcc.exe in D:/DJGPP/BIN (it's there, if I'm
	running it directly) but finds it in C:/DJGPP/BIN which doesn't
	work of course due to changed DJGPP env. variable. 

	After that I removed C:/DJGPP/BIN from PATH and left only
	D:/DJGPP/BIN there. After that I got problems in form I described 
	earlier (attempt to use command.com instead of bash).

> 
> >       Must remake target `all-libiberty'.
> > Too many parameters - all-libiberty                   
> > Bad command or file name
> 
> The last two lines are a telltale sign of the failure I described above: 
> either COMMAND.COM or the internal emulator is trying to run commands 
> meant for Bash, and Make crashes due to a bug in `system'.
> 
> Fixing the bug won't fix the problem, except that Make won't crash; but 
> the build will still fail.  Try to find the reason why Make doesn't 
> invoke Bash, like it should.
> 

	I'm perhaps will not have time to debug this in next 2 weeks.

Andris	


- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019