Re: ipsvd-0.11.0 build problem on Irix 6.5.22m (cdb_make.c)
Laurent Bercot <[email protected]>
| Newsgroups | gmane.comp.misc.pape.general |
|---|---|
| Message-ID | <[email protected]> |
> I can see that 'write' is used as a parameter to buffer_init, where a
> pointer to a function expecting no parameters and returning an int is
> expected. The only 'write' I have been able to find is write(2) in
> <unistd.h>, which returns an ssize_t (which could be a typedef for int),
> but expects a number of parameters. In desparation, I even tried to
> #include <unistd.h>, but this made no difference.
This is indeed the write() you are looking for.
Single Unix v3 specifies that this file nust be declared in unistd.h ;
it seems that Irix is not compliant.
I suggest:
grep -l -F 'write(' /usr/include
to look for every *write declaration in your standard headers. Then you
can include the proper .h file.
When messing around with headers, you may experience problems due to
lack of self-containedness. It's generally a good bet to start with
#include <sys/types.h>
which is self-contained on every system I have seen, and declares a lot
of symbols that are needed in other headers.
--
Laurent