Using RTools42 to compile on Windows gives the following error during compilation:
CC src/spss/libreadstat_la-readstat_zsav_read.lo
CC src/spss/libreadstat_la-readstat_zsav_write.lo
In file included from D:/rtools42/ucrt64/include/unistd.h:11,
from src/readstat_io_unistd.c:12:
D:/rtools42/ucrt64/include/process.h:196:28: error: conflicting types for 'spawnv'; have 'intptr_t(int, const char *, char * const*)' {aka 'long long int(int, const char *, char * const*)'}
196 | _CRTIMP intptr_t __cdecl spawnv(int,const char *_Filename,char *const _ArgList[]) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
| ^~~~~~
<command-line>: note: previous declaration of 'spawnv' with type 'intptr_t(int, const char *, const char * const*)' {aka 'long long int(int, const char *, const char * const*)'}
make: *** [Makefile:2096: src/libreadstat_la-readstat_io_unistd.lo] Error 1
make: *** Waiting for unfinished jobs....
In file included from D:/rtools42/ucrt64/include/unistd.h:11,
from D:/rtools42/ucrt64/include/zconf.h:488,
from D:/rtools42/ucrt64/include/zlib.h:34,
from src/spss/readstat_sav_write.c:25:
D:/rtools42/ucrt64/include/process.h:196:28: error: conflicting types for 'spawnv'; have 'intptr_t(int, const char *, char * const*)' {aka 'long long int(int, const char *, char * const*)'}
196 | _CRTIMP intptr_t __cdecl spawnv(int,const char *_Filename,char *const _ArgList[]) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
| ^~~~~~
<command-line>: note: previous declaration of 'spawnv' with type 'intptr_t(int, const char *, const char * const*)' {aka 'long long int(int, const char *, const char * const*)'}
make: *** [Makefile:2285: src/spss/libreadstat_la-readstat_sav_write.lo] Error 1
In file included from D:/rtools42/ucrt64/include/unistd.h:11,
from D:/rtools42/ucrt64/include/zconf.h:488,
from D:/rtools42/ucrt64/include/zlib.h:34,
from src/spss/readstat_zsav_compress.c:2:
D:/rtools42/ucrt64/include/process.h:196:28: error: conflicting types for 'spawnv'; have 'intptr_t(int, const char *, char * const*)' {aka 'long long int(int, const char *, char * const*)'}
196 | _CRTIMP intptr_t __cdecl spawnv(int,const char *_Filename,char *const _ArgList[]) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
| ^~~~~~
<command-line>: note: previous declaration of 'spawnv' with type 'intptr_t(int, const char *, const char * const*)' {aka 'long long int(int, const char *, const char * const*)'}
In file included from D:/rtools42/ucrt64/include/unistd.h:11,
from D:/rtools42/ucrt64/include/zconf.h:488,
from D:/rtools42/ucrt64/include/zlib.h:34,
from src/spss/readstat_zsav_read.c:2:
D:/rtools42/ucrt64/include/process.h:196:28: error: conflicting types for 'spawnv'; have 'intptr_t(int, const char *, char * const*)' {aka 'long long int(int, const char *, char * const*)'}
196 | _CRTIMP intptr_t __cdecl spawnv(int,const char *_Filename,char *const _ArgList[]) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
| ^~~~~~
<command-line>: note: previous declaration of 'spawnv' with type 'intptr_t(int, const char *, const char * const*)' {aka 'long long int(int, const char *, const char * const*)'}
In file included from D:/rtools42/ucrt64/include/unistd.h:11,
from D:/rtools42/ucrt64/include/zconf.h:488,
from D:/rtools42/ucrt64/include/zlib.h:34,
from src/spss/readstat_zsav_write.c:3:
D:/rtools42/ucrt64/include/process.h:196:28: error: conflicting types for 'spawnv'; have 'intptr_t(int, const char *, char * const*)' {aka 'long long int(int, const char *, char * const*)'}
196 | _CRTIMP intptr_t __cdecl spawnv(int,const char *_Filename,char *const _ArgList[]) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
| ^~~~~~
<command-line>: note: previous declaration of 'spawnv' with type 'intptr_t(int, const char *, const char * const*)' {aka 'long long int(int, const char *, const char * const*)'}
make: *** [Makefile:2397: src/spss/libreadstat_la-readstat_zsav_write.lo] Error 1
make: *** [Makefile:2383: src/spss/libreadstat_la-readstat_zsav_compress.lo] Error 1
make: *** [Makefile:2390: src/spss/libreadstat_la-readstat_zsav_read.lo] Error 1
[*mingw*], [CFLAGS="$CFLAGS"],
Using RTools42 to compile on Windows gives the following error during compilation:
We simply change:
ReadStat/configure.ac
Line 63 in f6a54c2
to:
Maybe the
-D_spawnv=spawnvis just for the older c++-runtime of msvc used in the older mingw?Not sure if there is a way to distinguish both versions of mingw here though.