amyinorbit/NESAsm-3.1-Mac

ld: library not found for -lgcc_s.10.5, clang: error: linker command failed with exit code 1

QuantumAnomaly opened this issue · 1 comments

Hi! Cool project! Unfortunately I couldn't get it to build.
Using macOS Mojave 10.14.6
I have Command Line Tools installed (without XCode).
If there's anything I can change to make this work, I'd love to know.
Everything below is the output I got in Terminal after doing 'make'...

make
mkdir -p ./obj/
clang -c -O3 -std=c99 -arch i386 -arch x86_64 src/assemble.c -o obj/assemble.o
src/assemble.c:201:13: warning: equality comparison with extraneous parentheses
[-Wparentheses-equality]
if ((flag == -1))
~~~~~^~~~~
src/assemble.c:201:13: note: remove extraneous parentheses around the comparison
to silence this warning
if ((flag == -1))
~ ^ ~
src/assemble.c:201:13: note: use '=' to turn this equality comparison into an
assignment
if ((flag == -1))
^~
=
1 warning generated.
src/assemble.c:201:13: warning: equality comparison with extraneous parentheses
[-Wparentheses-equality]
if ((flag == -1))
~~~~~^~~~~
src/assemble.c:201:13: note: remove extraneous parentheses around the comparison
to silence this warning
if ((flag == -1))
~ ^ ~
src/assemble.c:201:13: note: use '=' to turn this equality comparison into an
assignment
if ((flag == -1))
^~
=
1 warning generated.
mkdir -p ./obj/
clang -c -O3 -std=c99 -arch i386 -arch x86_64 src/code.c -o obj/code.o
mkdir -p ./obj/
clang -c -O3 -std=c99 -arch i386 -arch x86_64 src/command.c -o obj/command.o
src/command.c:1042:38: warning: passing 'unsigned int *' to parameter of type
'int *' converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args, &x, &y, &w, &h, 8))
^~
src/protos.h:114:41: note: passing argument to parameter 'a' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/command.c:1042:42: warning: passing 'unsigned int *' to parameter of type
'int *' converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args, &x, &y, &w, &h, 8))
^~
src/protos.h:114:49: note: passing argument to parameter 'b' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/command.c:1042:46: warning: passing 'unsigned int *' to parameter of type
'int *' converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args, &x, &y, &w, &h, 8))
^~
src/protos.h:114:57: note: passing argument to parameter 'c' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/command.c:1042:50: warning: passing 'unsigned int *' to parameter of type
'int *' converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args, &x, &y, &w, &h, 8))
^~
src/protos.h:114:65: note: passing argument to parameter 'd' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
4 warnings generated.
src/command.c:1042:38: warning: passing 'unsigned int *' to parameter of type
'int *' converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args, &x, &y, &w, &h, 8))
^~
src/protos.h:114:41: note: passing argument to parameter 'a' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/command.c:1042:42: warning: passing 'unsigned int *' to parameter of type
'int *' converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args, &x, &y, &w, &h, 8))
^~
src/protos.h:114:49: note: passing argument to parameter 'b' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/command.c:1042:46: warning: passing 'unsigned int *' to parameter of type
'int *' converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args, &x, &y, &w, &h, 8))
^~
src/protos.h:114:57: note: passing argument to parameter 'c' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/command.c:1042:50: warning: passing 'unsigned int *' to parameter of type
'int *' converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args, &x, &y, &w, &h, 8))
^~
src/protos.h:114:65: note: passing argument to parameter 'd' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
4 warnings generated.
mkdir -p ./obj/
clang -c -O3 -std=c99 -arch i386 -arch x86_64 src/crc.c -o obj/crc.o
mkdir -p ./obj/
clang -c -O3 -std=c99 -arch i386 -arch x86_64 src/expr.c -o obj/expr.o
src/expr.c:39:7: warning: assigning to 'unsigned char *' from 'char *' converts
between pointers to integer types with different sign [-Wpointer-sign]
expr = &prlnbuf[*ip];
^ ~~~~~~~~~~~~~
src/expr.c:58:12: warning: passing 'unsigned char *' to parameter of type
'char *' converts between pointers to integer types with different sign
[-Wpointer-sign]
strcpy(expr, "...");
^~~~
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/secure/_string.h:83:27: note:
expanded from macro 'strcpy'
__builtin___strcpy_chk (dest, VA_ARGS, __darwin_obsz (dest))
^~~~
src/expr.c:72:9: warning: assigning to 'unsigned char *' from 'char *' converts
between pointers to integer types with different sign [-Wpointer-sign]
expr = &prlnbuf[SFIELD];
^ ~~~~~~~~~~~~~~~~
src/expr.c:115:10: warning: assigning to 'unsigned char *' from 'char [80]'
converts between pointers to integer types with different sign
[-Wpointer-sign]
expr = func_arg[func_idx - 2][arg];
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/expr.c:414:9: warning: assigning to 'unsigned char *' from 'char [128]'
converts between pointers to integer types with different sign
[-Wpointer-sign]
expr = func_ptr->line;
^ ~~~~~~~~~~~~~~
5 warnings generated.
src/expr.c:39:7: warning: assigning to 'unsigned char *' from 'char *' converts
between pointers to integer types with different sign [-Wpointer-sign]
expr = &prlnbuf[*ip];
^ ~~~~~~~~~~~~~
src/expr.c:58:12: warning: passing 'unsigned char *' to parameter of type
'char *' converts between pointers to integer types with different sign
[-Wpointer-sign]
strcpy(expr, "...");
^~~~
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/secure/_string.h:83:27: note:
expanded from macro 'strcpy'
__builtin___strcpy_chk (dest, VA_ARGS, __darwin_obsz (dest))
^~~~
src/expr.c:72:9: warning: assigning to 'unsigned char *' from 'char *' converts
between pointers to integer types with different sign [-Wpointer-sign]
expr = &prlnbuf[SFIELD];
^ ~~~~~~~~~~~~~~~~
src/expr.c:115:10: warning: assigning to 'unsigned char *' from 'char [80]'
converts between pointers to integer types with different sign
[-Wpointer-sign]
expr = func_arg[func_idx - 2][arg];
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/expr.c:414:9: warning: assigning to 'unsigned char *' from 'char [128]'
converts between pointers to integer types with different sign
[-Wpointer-sign]
expr = func_ptr->line;
^ ~~~~~~~~~~~~~~
5 warnings generated.
mkdir -p ./obj/
clang -c -O3 -std=c99 -arch i386 -arch x86_64 src/func.c -o obj/func.o
mkdir -p ./obj/
clang -c -O3 -std=c99 -arch i386 -arch x86_64 src/input.c -o obj/input.o
mkdir -p ./obj/
clang -c -O3 -std=c99 -arch i386 -arch x86_64 src/macro.c -o obj/macro.o
mkdir -p ./obj/
clang -c -O3 -std=c99 -arch i386 -arch x86_64 src/main.c -o obj/main.o
mkdir -p ./obj/
clang -c -O3 -std=c99 -arch i386 -arch x86_64 src/map.c -o obj/map.o
src/map.c:44:14: warning: passing 'unsigned char [16]' to parameter of type
'const char *' converts between pointers to integer types with different
sign [-Wpointer-sign]
if (strncmp(header, "FORM", 4) || strncmp(&header[8], "FMAP", 4)) {
^~~~~~
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/string.h:84:26: note:
passing argument to parameter '__s1' here
int strncmp(const char *__s1, const char *__s2, size_t __n);
^
src/map.c:44:44: warning: passing 'unsigned char *' to parameter of type
'const char *' converts between pointers to integer types with different
sign [-Wpointer-sign]
if (strncmp(header, "FORM", 4) || strncmp(&header[8], "FMAP", 4)) {
^~~~~~~~~~
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/string.h:84:26: note:
passing argument to parameter '__s1' here
int strncmp(const char *__s1, const char *__s2, size_t __n);
^
src/map.c:72:15: warning: passing 'unsigned char [16]' to parameter of type
'const char *' converts between pointers to integer types with different
sign [-Wpointer-sign]
if (strncmp(header, "BODY", 4) == 0) {
^~~~~~
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/string.h:84:26: note:
passing argument to parameter '__s1' here
int strncmp(const char *__s1, const char *__s2, size_t __n);
^
3 warnings generated.
src/map.c:44:14: warning: passing 'unsigned char [16]' to parameter of type
'const char *' converts between pointers to integer types with different
sign [-Wpointer-sign]
if (strncmp(header, "FORM", 4) || strncmp(&header[8], "FMAP", 4)) {
^~~~~~
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/string.h:84:26: note:
passing argument to parameter '__s1' here
int strncmp(const char *__s1, const char *__s2, size_t __n);
^
src/map.c:44:44: warning: passing 'unsigned char *' to parameter of type
'const char *' converts between pointers to integer types with different
sign [-Wpointer-sign]
if (strncmp(header, "FORM", 4) || strncmp(&header[8], "FMAP", 4)) {
^~~~~~~~~~
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/string.h:84:26: note:
passing argument to parameter '__s1' here
int strncmp(const char *__s1, const char *__s2, size_t __n);
^
src/map.c:72:15: warning: passing 'unsigned char [16]' to parameter of type
'const char *' converts between pointers to integer types with different
sign [-Wpointer-sign]
if (strncmp(header, "BODY", 4) == 0) {
^~~~~~
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/string.h:84:26: note:
passing argument to parameter '__s1' here
int strncmp(const char *__s1, const char *__s2, size_t __n);
^
3 warnings generated.
mkdir -p ./obj/
clang -c -O3 -std=c99 -arch i386 -arch x86_64 src/mml.c -o obj/mml.o
mkdir -p ./obj/
clang -c -O3 -std=c99 -arch i386 -arch x86_64 src/nes.c -o obj/nes.o
mkdir -p ./obj/
clang -c -O3 -std=c99 -arch i386 -arch x86_64 src/output.c -o obj/output.o
mkdir -p ./obj/
clang -c -O3 -std=c99 -arch i386 -arch x86_64 src/pce.c -o obj/pce.o
src/pce.c:546:42: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(1, pcx_nb_args - 1, &x, &y, &w, &h, 8))
^~
src/protos.h:114:41: note: passing argument to parameter 'a' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:546:46: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(1, pcx_nb_args - 1, &x, &y, &w, &h, 8))
^~
src/protos.h:114:49: note: passing argument to parameter 'b' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:546:50: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(1, pcx_nb_args - 1, &x, &y, &w, &h, 8))
^~
src/protos.h:114:57: note: passing argument to parameter 'c' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:546:54: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(1, pcx_nb_args - 1, &x, &y, &w, &h, 8))
^~
src/protos.h:114:65: note: passing argument to parameter 'd' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:679:38: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args, &x, &y, &w, &h, 16))
^~
src/protos.h:114:41: note: passing argument to parameter 'a' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:679:42: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args, &x, &y, &w, &h, 16))
^~
src/protos.h:114:49: note: passing argument to parameter 'b' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:679:46: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args, &x, &y, &w, &h, 16))
^~
src/protos.h:114:57: note: passing argument to parameter 'c' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:679:50: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args, &x, &y, &w, &h, 16))
^~
src/protos.h:114:65: note: passing argument to parameter 'd' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:728:38: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args, &x, &y, &w, &h, 16))
^~
src/protos.h:114:41: note: passing argument to parameter 'a' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:728:42: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args, &x, &y, &w, &h, 16))
^~
src/protos.h:114:49: note: passing argument to parameter 'b' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:728:46: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args, &x, &y, &w, &h, 16))
^~
src/protos.h:114:57: note: passing argument to parameter 'c' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:728:50: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args, &x, &y, &w, &h, 16))
^~
src/protos.h:114:65: note: passing argument to parameter 'd' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:787:42: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args - 1, &x, &y, &w, &h, 16))
^~
src/protos.h:114:41: note: passing argument to parameter 'a' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:787:46: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args - 1, &x, &y, &w, &h, 16))
^~
src/protos.h:114:49: note: passing argument to parameter 'b' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:787:50: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args - 1, &x, &y, &w, &h, 16))
^~
src/protos.h:114:57: note: passing argument to parameter 'c' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:787:54: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args - 1, &x, &y, &w, &h, 16))
^~
src/protos.h:114:65: note: passing argument to parameter 'd' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
16 warnings generated.
src/pce.c:546:42: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(1, pcx_nb_args - 1, &x, &y, &w, &h, 8))
^~
src/protos.h:114:41: note: passing argument to parameter 'a' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:546:46: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(1, pcx_nb_args - 1, &x, &y, &w, &h, 8))
^~
src/protos.h:114:49: note: passing argument to parameter 'b' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:546:50: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(1, pcx_nb_args - 1, &x, &y, &w, &h, 8))
^~
src/protos.h:114:57: note: passing argument to parameter 'c' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:546:54: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(1, pcx_nb_args - 1, &x, &y, &w, &h, 8))
^~
src/protos.h:114:65: note: passing argument to parameter 'd' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:679:38: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args, &x, &y, &w, &h, 16))
^~
src/protos.h:114:41: note: passing argument to parameter 'a' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:679:42: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args, &x, &y, &w, &h, 16))
^~
src/protos.h:114:49: note: passing argument to parameter 'b' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:679:46: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args, &x, &y, &w, &h, 16))
^~
src/protos.h:114:57: note: passing argument to parameter 'c' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:679:50: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args, &x, &y, &w, &h, 16))
^~
src/protos.h:114:65: note: passing argument to parameter 'd' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:728:38: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args, &x, &y, &w, &h, 16))
^~
src/protos.h:114:41: note: passing argument to parameter 'a' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:728:42: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args, &x, &y, &w, &h, 16))
^~
src/protos.h:114:49: note: passing argument to parameter 'b' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:728:46: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args, &x, &y, &w, &h, 16))
^~
src/protos.h:114:57: note: passing argument to parameter 'c' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:728:50: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args, &x, &y, &w, &h, 16))
^~
src/protos.h:114:65: note: passing argument to parameter 'd' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:787:42: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args - 1, &x, &y, &w, &h, 16))
^~
src/protos.h:114:41: note: passing argument to parameter 'a' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:787:46: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args - 1, &x, &y, &w, &h, 16))
^~
src/protos.h:114:49: note: passing argument to parameter 'b' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:787:50: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args - 1, &x, &y, &w, &h, 16))
^~
src/protos.h:114:57: note: passing argument to parameter 'c' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
src/pce.c:787:54: warning: passing 'unsigned int *' to parameter of type 'int *'
converts between pointers to integer types with different sign
[-Wpointer-sign]
if (!pcx_parse_args(0, pcx_nb_args - 1, &x, &y, &w, &h, 16))
^~
src/protos.h:114:65: note: passing argument to parameter 'd' here
int pcx_parse_args(int i, int nb, int *a, int *b, int *c, int *d, int size);
^
16 warnings generated.
mkdir -p ./obj/
clang -c -O3 -std=c99 -arch i386 -arch x86_64 src/pcx.c -o obj/pcx.o
src/pcx.c:120:11: warning: equality comparison with extraneous parentheses
[-Wparentheses-equality]
if ((ref == NULL))
~~~~^~~~~~~
src/pcx.c:120:11: note: remove extraneous parentheses around the comparison to
silence this warning
if ((ref == NULL))
~ ^ ~
src/pcx.c:120:11: note: use '=' to turn this equality comparison into an
assignment
if ((ref == NULL))
^~
=
src/pcx.c:293:17: warning: incompatible pointer to integer conversion assigning
to 'int' from 'void *' [-Wint-conversion]
expr_lablcnt = NULL;
^ ~~~~
src/pcx.c:366:50: warning: comparison between pointer and integer
('int' and 'void *')
if (strlen(name) && (strcasecmp(pcx_name, name) == NULL))
~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~
3 warnings generated.
src/pcx.c:120:11: warning: equality comparison with extraneous parentheses
[-Wparentheses-equality]
if ((ref == NULL))
~~~~^~~~~~~
src/pcx.c:120:11: note: remove extraneous parentheses around the comparison to
silence this warning
if ((ref == NULL))
~ ^ ~
src/pcx.c:120:11: note: use '=' to turn this equality comparison into an
assignment
if ((ref == NULL))
^~
=
src/pcx.c:293:17: warning: incompatible pointer to integer conversion assigning
to 'int' from 'void *' [-Wint-conversion]
expr_lablcnt = NULL;
^ ~~~~
src/pcx.c:366:50: warning: comparison between pointer and integer
('int' and 'void *')
if (strlen(name) && (strcasecmp(pcx_name, name) == NULL))
~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~
3 warnings generated.
mkdir -p ./obj/
clang -c -O3 -std=c99 -arch i386 -arch x86_64 src/proc.c -o obj/proc.o
mkdir -p ./obj/
clang -c -O3 -std=c99 -arch i386 -arch x86_64 src/symbol.c -o obj/symbol.o
src/symbol.c:379:22: warning: address of array 'sym->name' will always evaluate
to 'true' [-Wpointer-bool-conversion]
if (sym->name && sym->bank < RESERVED_BANK) {
~~~~~^~~~ ~~
1 warning generated.
src/symbol.c:379:22: warning: address of array 'sym->name' will always evaluate
to 'true' [-Wpointer-bool-conversion]
if (sym->name && sym->bank < RESERVED_BANK) {
~~~~~^~~~ ~~
1 warning generated.
mkdir -p ./build/
clang -arch i386 -arch x86_64 -mmacosx-version-min=10.5 ./obj/assemble.o ./obj/code.o ./obj/command.o ./obj/crc.o ./obj/expr.o ./obj/func.o ./obj/input.o ./obj/macro.o ./obj/main.o ./obj/map.o ./obj/mml.o ./obj/nes.o ./obj/output.o ./obj/pce.o ./obj/pcx.o ./obj/proc.o ./obj/symbol.o -o ./build/nesasm
ld: library not found for -lgcc_s.10.5
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [nesasm] Error 1

Realized this is a duplicate. Closing. Was able to resolve, thanks to comments users posted on the other issue.