www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2002/01/08/13:15:08

X-Authentication-Warning: delorie.com: mailnull set sender to djgpp-bounces using -f
Date: Tue, 08 Jan 2002 20:11:44 +0200
From: "Eli Zaretskii" <eliz AT is DOT elta DOT co DOT il>
Sender: halo1 AT zahav DOT net DOT il
To: djgpp AT delorie DOT com
Message-Id: <1858-Tue08Jan2002201143+0200-eliz@is.elta.co.il>
X-Mailer: emacs 21.1.50 (via feedmail 8 I) and Blat ver 1.8.9
In-reply-to: <slrn.pl.a3m8cu.b6.Hary@localhost.localdomain> (message from HARY
on Tue, 8 Jan 2002 17:12:35 +0000 (UTC))
Subject: Re: Ambiguous output redirect
References: <slrn DOT pl DOT a3m8cu DOT b6 DOT Hary AT localhost DOT localdomain>
Reply-To: djgpp AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: djgpp AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

> From: HARY <Hary AT address DOT is DOT invalid>
> Newsgroups: comp.os.msdos.djgpp
> Date: Tue, 8 Jan 2002 17:12:35 +0000 (UTC)
> 
> I get the message given in subject when I run some UNIX program that
> I've compiled for DOS.

This is usually a sign that the Unix program invokes a subsidiary
program or command via the `system' library function, but the syntax
of that command requires a Unixy shell (such as Bash).  The shell
emulator built into the DJGPP version of `system' is smart enough to
emulate all of COMMAND.COM's functionality and then some more, but it
cannot run arbitrary Unix shell commands.

A solution is to install the ported Bash and point the SHELL
environment variable to the Bash's fill file name.

Another possibility is to modify the sources of the program so that
Unixy shell is not required in the first place.  For example, many
times shell features are used to redirect stderr of the subsidiary
program; you can do that redirection with direct library calls, like
dup/dup2, or run the programs via the `redir' utility.

- Raw text -


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