delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2005/02/08/17:55:09

Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
Mime-Version: 1.0 (Apple Message framework v619.2)
In-Reply-To: <c97b679ac4abf5b562e0134cf11df760@columbia.edu>
References: <c97b679ac4abf5b562e0134cf11df760 AT columbia DOT edu>
Message-Id: <d062b9cec9c741930053b0b5ed6bbfa3@columbia.edu>
From: Matthew Bogosian <mattb AT columbia DOT edu>
Subject: Re: Setting the Windows Path variable for children of a bash script....
Date: Tue, 8 Feb 2005 14:54:38 -0800
To: cygwin AT cygwin DOT com
X-Pgp-Agent: GPGMail 1.0.2

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Incidentally, I have already thought of doing something like this:

# ...
Path="$(cygpath -pw "${PATH}");$(cygpath -pw "${LD_LIBRARY_PATH}")"
export Path
exec "${0}.bat" "${Path}" ${1+"${@}"}

Where "${0}.bat" may be something like:

set Path=%1
shift
%1 %2 %3 ...

But this does not work, since some of my arguments may contain spaces 
(which are not parsed correctly in the batch file), and batch files 
have an unusable limit on the number of useful arguments they can parse 
(%* is *not* affected by the shift batch file command, nor does it 
properly quote arguments). Using "%1" "%2" "%3" ... does not help 
either.

In short, I do not believe that batch files are a viable solution to my 
problem (though this may stem from my ignorance on how to write them 
robustly). Either way, I would like to find an alternate solution.

	-- Matt


On Feb 8, 2005, at 14:43, Matthew Bogosian wrote:

> ...
>
> I'm trying to execute a cygwin-ignorant Windows binary from a bash 
> script. However, the DLLs required to load this binary are not in the 
> system- or user-wide Windows Path variable (nor do I want them to be). 
> I'm trying to modify the environment before execution of this binary, 
> but it doesn't seem to work. Here's what I've got:
>
> # ...
> Path="$(cygpath -pw "${PATH}");$(cygpath -pw "${LD_LIBRARY_PATH}")"
> export Path
> exec /cygdrive/c/path/to/windows/binary.exe
>
> LD_LIBRARY_PATH contains the paths in which the DLLs specific to 
> binary.exe reside. Unfortunately, binary.exe doesn't seem to be able 
> to find them there when being invoked from the script's exec command.
>
> ...
>
> Does anyone know how to do this? Any help is much appreciated.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (Darwin)

iD8DBQFCCUMunLpDzL5I7l8RAv8PAKCRGQEebvZVYrlwziw2fNB9m/qfQACeP1me
VIpvbTm0cpnlYa+m3YDy+Zo=
=fRSK
-----END PGP SIGNATURE-----


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


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