This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

"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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]