[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
cannot compile liboctave/file-ops.cc; mkfifo issue (MinGW build)
From: |
John W. Eaton |
Subject: |
cannot compile liboctave/file-ops.cc; mkfifo issue (MinGW build) |
Date: |
Tue, 5 Jan 2010 01:30:09 -0500 |
On 2-Jan-2010, Tatsuro MATSUOKA wrote:
| Hello
|
| Platform windows xp, MinGW (gcc-4.4.0).
|
| The problem of mkdir and io.h in compling liboctave/file-ops.cc seemed to be
solved if sys/stat.h is
| placed under the include path defined in CPPFLASS after John's changeset
| http://hg.savannah.gnu.org/hgweb/octave/rev/62eb444704ba
I'm not sure what you mean by "placed under the include path defined
in CPPFLASS". Isn't the replacement sys/stat.h file provided by
gnulib supposed to be included if your system either doesn't have a
sys/stat.h file, or if it is broken in some way?
| However I have met a problem 'mkfifo'.
|
| ../../../hg/octave-work/liboctave/file-ops.cc: In static member function
'static int
| file_ops::mkfifo_internal(const std::string&, mode_t, std::string&)':
| ../../../hg/octave-work/liboctave/file-ops.cc:130: error: '::mkfifo' has not
been declared
|
| The function 'mkfifo' seem to be not exist in MinGW (also in MSVC).
Gnulib provides a mkfifo.c file with the lines
#if !HAVE_MKFIFO
/* Mingw lacks mkfifo; always fail with ENOSYS. */
int
mkfifo (char const *name _UNUSED_PARAMETER_, mode_t mode _UNUSED_PARAMETER_)
{
errno = ENOSYS;
return -1;
}
so I assumed that it was supposed to be safe to call mkfifo
unconditionally. At least compiling and linking should succeed; I
realize that it will fail and return -1 if called.
jwe