octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: pipes in Octave on Windows? (was: Re: optim, struct, parallel: pre-r


From: Tatsuro MATSUOKA
Subject: Re: pipes in Octave on Windows? (was: Re: optim, struct, parallel: pre-release check on Windows?)
Date: Thu, 31 Mar 2016 19:11:01 +0900 (JST)

> From: Olaf Till 

> To: Tatsuro MATSUOKA 
> Cc: "octave-maintainers
> Date: 2016/3/31, Thu 18:37
> Subject: pipes in Octave on Windows? (was: Re: optim, struct, parallel: 
> pre-release check on Windows?)
> 
> On Thu, Mar 31, 2016 at 05:54:56PM +0900, Tatsuro MATSUOKA wrote:
>>  >> res = pararrayfun (4, @ (x) x, 1:15)
>>  error: failed to open pipe: pipe: not supported on this system
>>  error: called from
> 
> This surprises me. Cygwin does have 'pipe()', doesn't it? At a first
> glance, Octave just checks with AC_CHECK_FUNCS([pipe]) to decide if
> pipe is supported, should this not succeed on cygwin?
> 
> From Jaroslavs comments to parcellfun/pararrayfun I wouldn't have
> deduced any problems in using them on Windows at all, they only might
> not work very efficient there.
> 
> Olaf


> Cygwin does have 'pipe()', doesn't it?

Yes, it has. 
Thus execution of the same test on octave on Cygwin-x64 gives:

>> res = pararrayfun (4, @ (x) x, 1:15)
parcellfun: 15/15 jobs done
res =

    1    2    3    4    5    6    7    8    9   10   11   12   13   14   15

as expected. 

Cygwin supports almost all posix functions and then
almost all octave-forge packages work on octave on the Cygwin [1].
(However, perhaps Macro do a lot of job for octave-forge on Cygwin.)

At least MinGW and msvc9 do not support "pipe" function.
Octave for windows is built using MinGW compiler so that 
some treatments are required to use "pipe" function.
I refer gnulib implementation of "pipe" [2], [3].


[1] http://wiki.octave.org/Octave_for_Microsoft_Windows#Octave_4.0.1_on_cygwin
[2] http://git.savannah.gnu.org/cgit/gnulib.git/tree/lib/pipe.c
[3] http://git.savannah.gnu.org/cgit/gnulib.git/tree/lib/pipe.h

Tatsuro



reply via email to

[Prev in Thread] Current Thread [Next in Thread]