Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Message-ID: Date: Sun, 8 May 2005 12:48:00 -0700 From: Joshua Daniel Franklin Reply-To: Joshua Daniel Franklin To: cygwin AT cygwin DOT com Subject: Re: Solution, possible FAQ entry: make problem: execvp: /bin/sh: Illegal Argument In-Reply-To: <20050508003215.GA24398@trixie.casa.cgf.cx> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Disposition: inline References: <427BE5FE DOT 7020000 AT fabeljet DOT com> <20050508003215 DOT GA24398 AT trixie DOT casa DOT cgf DOT cx> X-IsSubscribed: yes Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by delorie.com id j48JmGvO010032 > >On 5/6/05, Jørgen Havsberg Seland wrote: > >> This problem is (often) due to the command-line being to long for the > >> windows execution model. To circumvent this, mount the path of the > >> executable using the -X switch. For instance, use > > > On Sat, May 07, 2005 at 05:11:39PM -0700, Joshua Daniel Franklin wrote: > >I don't mind adding an FAQ, it looks like it's been asked few times. Any > >problem with replacing this ancient entry about MAKE_MODE (which is > >covered in the User's Guide)? > > > >http://cygwin.com/faq/faq_3.html#SEC93 > On 5/7/05, Christopher Faylor wrote: > Fine with me. Updated with the following text (thanks, Jørgen): Errors of `make: execvp: /bin/sh: Illegal Argument' or `make: execvp: /bin/sh: Argument list too long' are often caused by the command-line being to long for the Windows execution model. To circumvent this, mount the path of the executable using the -X switch to enable cygexec for all executables in that folder; you will also need to exclude non-cygwin executables with the -x switch. Enabling cygexec causes cygwin executables to talk directly to one another, which increases the command-line limit. To enable cygexec for `/bin' and `/usr/bin', you can use these commands in a batch file: mount -X -b -f c:\cygwin\bin /bin mount -X -b -f c:\cygwin\bin /usr/bin mount -x -b -f c:\cygwin\bin\strace.exe /usr/bin/strace.exe mount -x -b -f c:\cygwin\bin\strace.exe /bin/strace.exe mount -x -b -f c:\cygwin\bin\cygcheck.exe /usr/bin/cygcheck.exe mount -x -b -f c:\cygwin\bin\cygcheck.exe /bin/cygcheck.exe Note that you must specifically exclude strace and cygcheck, which are not linked to the Cygwin DLL. (See http://www.cygwin.com/cygwin-ug-net/using-utils.html#mount for more information.) -- 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/