This is the mail archive of the
cygwin
mailing list for the Cygwin project.
"Bad address" error with redirection (stdout and stderr) in background process
- From: Heiko Elger <heiko_elger at arburg dot com>
- To: cygwin at cygwin dot com
- Date: Wed, 11 Jan 2012 15:05:26 +0000 (UTC)
- Subject: "Bad address" error with redirection (stdout and stderr) in background process
Hello,
I'm using latest snapshot and updated cygwin installation.
$ uname -a
CYGWIN_NT-6.1-WOW64 PCFX166 1.7.10s(0.259/5/3) 20120111 01:45:50 i686 Cygwin
I've done rebaseall and peflagsall.
I've found the following problem using make in parallel (-j) with multiple
commands joined with semicolon (;) using cygwin and non-cygwin(cross compiler)
commands.
# just an example
test.o: test.c
echo compile ; cross-gcc -c test.c -o test.o
Having multiple targets like this and using for example
$ make -j8 |& tee make.log
you will get a "bad address" error.
/bin/sh: cross-gcc.exe: Bad address
makefile:10: recipe for target `test.o' failed
I stripped down the problem to the following testcase:
$ cat ./testcase.sh
#!/bin/sh
(( echo 123 ; cmd /c echo 456 ) |& tee tee.log ) &
executing the testcase will produce thr following output:
$ ./testcase.sh
$ 123
./testcase.sh: line 2: /cygdrive/c/Windows/system32/cmd: Bad address
If only redirecting stdout to tee all works fine.
The problem occurs ony while mixing cygwin and non cygwin programs.
Using snapshot 20110829 all works fine.
Any ideas?
best regards
heiko
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple