Не удалось выполнить 'make' для файлов. c и .s с помощью Mac - PullRequest
0 голосов
/ 16 марта 2020

Я пытаюсь скомпилировать простой проект с файлами. c и .s, используя мою Ma c. Когда я запускаю 'make', он бросает компиляцию, и я думаю, что он потерпел неудачу при попытке связать (не уверен).

Вот ошибка, которую он показывает:

gcc -m32 -g -Wall -c -o main.o main.c
gcc -m32 -g -Wall -c -o numbers.o numbers.c
nasm -g -f macho -w+all -o add.o add.s
gcc -m32 -g -Wall -o run main.o numbers.o add.o
ld: malformed file
/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/lib/libSystem.tbd:4:18: error: unknown enumerated scalar
platform:        zippered
                 ^~~~~~~~
 file '/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/lib/libSystem.tbd'
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [run] Error 1

и я добавлю также make-файл:

run: main.o numbers.o add.o
    gcc -m32 -g -Wall -o run main.o numbers.o add.o
main.o: main.c
    gcc -m32 -g -Wall -c -o main.o main.c
numbers.o: numbers.c
    gcc -m32 -g -Wall -c -o numbers.o numbers.c
add.o: add.s
    nasm -g -f macho -w+all -o add.o add.s
.PHONY: clean
clean: 
    rm -f *.o run
...