execvp error:cygwin+make+busybox
John Williams
jwilliams@itee.uq.edu.au
Tue May 3 00:33:00 GMT 2005
Hello,
Attempting to cross-compile Busybox 1.00 under Cygwin (1.5.16-1) I am
hitting an error similar to one previously reported on the Cygwin list
(Jan 05):
http://www.cygwin.com/ml/cygwin/2005-01/msg00657.html
No resolution was posted to the list at that time.
The busybox Makefile attempts to run the host CC (gcc in this case) to
build some setup/config tools, as well as spawning a shell script to do
a bit of preparatory work. This is before any cross-compiling begins.
Make reports the following error:
gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -o scripts/mkdep
/cygdrive/e/cygwin-uclinux/uClinux-dist/user/busybox/scripts/mkdep.c
make[3]: execvp: gcc: Invalid argument
make[3]: *** [scripts/mkdep] Error 127
The problem occurs with Make versions 3.79.1 and 3.80 (haven't tested
any earlier versions)
The Makefile fragment which fails looks like this:
scripts/mkdep: $(top_srcdir)/scripts/mkdep.c
$(HOSTCC) $(HOSTCFLAGS) -o $@ $<
HOSTCC and HOSTCFLAGS can be deduced from above output, but there's
nothing exotic in there.
Another fragment which fails is this:
.config.mkconfig: $(ROOTDIR)/config/.config
sh ./mkconfig > .config.tmp
This fragment fails with:
make[3]: execvp: sh: Invalid argument
If executed directly from the commandline, these commands complete fine
- it's only when spawning from within the Makefile.
cygcheck output is attached.
Any insights into the nature and possible solution of this problem would
be greatly appreciated.
Thanks,
John
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: cygcheck.txt
URL: <http://cygwin.com/pipermail/cygwin/attachments/20050503/e1092405/attachment.txt>
-------------- next part --------------
--
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/
More information about the Cygwin
mailing list