[英]how to run this assembly code on nasm?
我有一个游戏源代码,但我无法在nasm上组装它,我无法理解问题出在哪里。
这是makefile:
# Makefile for the nibbles game.
all: nibbles_asm nibbles_asm_start
# Rule for compiling C source
.c.o:
gcc -Os -march=i686 -Wall -g -c $<
# Rule for compiling assembly source
.S.o:
as -gstabs $^ -o $@
# ASM game
nibbles_asm: main.o nibbles.o helpers.o
gcc -lcurses $^ -o -V $@
# ASM game
nibbles_asm_start: start.o nibbles.o helpers.o workaround.o
gcc -lcurses -lc -nostdlib $^ -o $@
clean:
rm -f *~
rm -f *.o
rm -f nibbles nibbles_asm
这是错误:
as -o nibbles.o nibbles.s
gcc -lcurses main.o nibbles.o helpers.o -o -V nibbles_asm
gcc: nibbles_asm: No such file or directory
make: *** [nibbles_asm] Error 1
似乎-gstabs $ ^ -o $ @不构建nibbles_asm文件! 我也在终端输入了自己的命令,但它给了我很多错误。 我的朋友在他的计算机上运行此代码,因此代码没有任何问题。
从nibbles.S
到nibbles.o
没有依赖性。 此外, helpers.o
和workaround.o
没有关联的源文件关系。 添加这些关系,它应该工作。
您在gcc命令中的错误位置(作为-o
参数)有一个stray -V
。 将其取下或放在开头。
你trying to exec 'i686-linux-gnu-gcc--lcurses': No such file
第二个错误trying to exec 'i686-linux-gnu-gcc--lcurses': No such file
意味着你在某个地方缺少gcc和-lcurses之间的空格。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.