make -f unix/Makefile all 发生错误 MACOS 10.15.7
WHDevLab opened this issue · 1 comments
bogon:unzip-lzfse qp$ make -f unix/Makefile all
Attempting "make generic" now. If this fails for some reason, type
"make help" and/or "make list" for suggestions.
eval /Applications/Xcode.app/Contents/Developer/usr/bin/make -f unix/Makefile unzips ACONF_DEP=flags cat flags
cc -c -I. -Ibzip2 -DUNIX -O3 -DLARGE_FILE_SUPPORT -DUNICODE_SUPPORT -DUTF8_MAYBE_NATIVE -DNO_FCHMOD -DNO_FCHOWN -DNO_LCHOWN -DNO_NL_LANGINFO -DNO_LCHMOD -DZMEM -DNO_DIR -DHAVE_DIRENT_H -DHAVE_TERMIOS_H -D_MBCS -DUSE_LZFSE -I/usr/local/include unix/unix.c
In file included from unix/unix.c:31:
In file included from ./unzip.h:718:
./unzpriv.h:1288:11: warning: 'memcpy' macro redefined [-Wmacro-redefined]
define memcpy(dest,src,len) bcopy(src,dest,len)
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/secure/_string.h:62:9: note: previous definition is here
#define memcpy(dest, ...)
^
unix/unix.c:132:14: error: typedef redefinition with different types ('FILE' (aka 'struct __sFILE') vs 'struct DIR')
typedef FILE DIR;
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/dirent.h:84:3: note: previous definition is here
} DIR;
^
unix/unix.c:136:2: error: expected ';' after struct
} DIR
^
unix/unix.c:137:4: error: expected ';' after top level declarator
DIR *opendir OF((ZCONST char *dirspec));
^
;
unix/unix.c:138:6: error: conflicting types for 'closedir'
void closedir OF((DIR *dirp));
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/dirent.h:105:5: note: previous declaration is here
int closedir(DIR *) __DARWIN_ALIAS(closedir);
^
unix/unix.c:141:6: error: expected identifier
DIR *opendir(dirspec)
^
unix/unix.c:130:34: note: expanded from macro 'opendir'
#define opendir(path) fopen(path,"r")
^
unix/unix.c:141:6: error: conflicting types for 'fopen'
unix/unix.c:130:23: note: expanded from macro 'opendir'
#define opendir(path) fopen(path,"r")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/stdio.h:153:7: note: previous declaration is here
FILE *fopen(const char * __restrict __filename, const char * __restrict __mode) __DARWIN_ALIAS_STARTING(__MAC_10_6, __IPHONE...
^
unix/unix.c:141:22: error: expected ';' after top level declarator
DIR *opendir(dirspec)
^
;
unix/unix.c:143:1: error: expected identifier or '('
{
^
unix/unix.c:155:6: error: conflicting types for 'fclose'
void closedir(dirp)
^
unix/unix.c:131:23: note: expanded from macro 'closedir'
#define closedir(dir) fclose(dir)
^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/stdio.h:143:6: note: previous declaration is here
int fclose(FILE *);
^
unix/unix.c:158:18: error: no member named 'dirhandle' in 'DIR'
fclose(dirp->dirhandle);
~~~~ ^
unix/unix.c:174:27: error: no member named 'entry' in 'DIR'
if (fread(&(dirp->entry), sizeof (struct dirent), 1,
~~~~ ^
unix/unix.c:175:25: error: no member named 'dirhandle' in 'DIR'
dirp->dirhandle) == 0)
~~~~ ^
unix/unix.c:177:25: error: no member named 'entry' in 'DIR'
else if ((dirp->entry).d_ino)
~~~~ ^
unix/unix.c:178:28: error: no member named 'entry' in 'DIR'
return &(dirp->entry);
~~~~ ^
unix/unix.c:257:22: warning: incompatible pointer types passing 'DIR *' to parameter of type 'FILE *' (aka 'struct __sFILE *')
[-Wincompatible-pointer-types]
closedir((DIR *)G.wild_dir);
^~~~~~~~~~~~~~~~~
unix/unix.c:131:30: note: expanded from macro 'closedir'
#define closedir(dir) fclose(dir)
^~~
/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/stdio.h:143:19: note: passing argument to parameter here
int fclose(FILE *);
^
unix/unix.c:298:14: warning: incompatible pointer types passing 'DIR *' to parameter of type 'FILE *' (aka 'struct __sFILE *')
[-Wincompatible-pointer-types]
closedir((DIR )G.wild_dir); / at least one entry read; nothing left */
^~~~~~~~~~~~~~~~~
unix/unix.c:131:30: note: expanded from macro 'closedir'
#define closedir(dir) fclose(dir)
^~~
/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/stdio.h:143:19: note: passing argument to parameter here
int fclose(FILE *);
^
3 warnings and 14 errors generated.
make[1]: *** [unix.o] Error 1
make: *** [generic] Error 2