我正在尝试在 OS X 终端中运行 spim。我可以使用 QTSimp,但spim
终端中的命令尚不存在。当谈到终端(刚从 Windows 切换)时,我有点新手,所以也许这真的很明显。
首先,我只是导航到 spim 文件夹并输入make
.
Lasker:spim orthogonal$ make
./Configure
cc
Check if this machine is big-endian or little-endian.
This may take a few minutes.
I believe this is a little-endian machine.
Looks like a Mac OS X / OpenStep universe exists...
Scanning libc.dylib
Checking if libc on this machine contains:
vsprintf: No, I don't think
_doprnt: NO, THIS IS A PROBLEM: NO VSPRINTF AND NO _DOPRNT
SPIM WILL NOT RUN PROPERLY
vfprintf: No, I don't think
_doprnt: NO, THIS IS A PROBLEM: NO VFPRINTF AND NO _DOPRNT
SPIM WILL NOT RUN PROPERLY
strtoul: No, I don't think
strtol: No, I don't think
memcpy: No, I don't think
Checking for /usr/include/termios.h
Yes, it is there
make -f Makefile spim2
bison -d --file-prefix=y ../CPU/parser.y
../CPU/parser.y: conflicts: 25 shift/reduce
gcc -I. -I../CPU `cat configuration` -DTEXT_SIZE=65536 -DDATA_SIZE=131072 -DK_TEXT_SIZE=65536 -DDEFAULT_EXCEPTION_HANDLER="\"/usr/local/lib/spim/exceptions.s\"" -DSPIM_VERSION="\"`cat ../VERSION`\"" -g -Wall -c -o spim-utils.o ../CPU/spim-utils.c
In file included from ../CPU/spim-utils.c:39:
../CPU/spim.h:71:1: warning: "memcpy" redefined
In file included from /usr/include/string.h:190,
from ../CPU/spim-utils.c:36:
/usr/include/secure/_string.h:53:1: warning: this is the location of the previous definition
../CPU/spim-utils.c:501: error: expected ‘)’ before numeric constant
../CPU/spim-utils.c:504: error: expected identifier or ‘(’ before ‘{’ token
../CPU/spim-utils.c:520: error: conflicting types for ‘strtol’
/usr/include/stdlib.h:181: error: previous declaration of ‘strtol’ was here
make[1]: *** [spim-utils.o] Error 1
make: *** [spim] Error 2
我回去再次阅读安装指南,它说尝试make install
:
Lasker:spim orthogonal$ make install
make -f Makefile spim2
gcc -I. -I../CPU `cat configuration` -DTEXT_SIZE=65536 -DDATA_SIZE=131072 -DK_TEXT_SIZE=65536 -DDEFAULT_EXCEPTION_HANDLER="\"/usr/local/lib/spim/exceptions.s\"" -DSPIM_VERSION="\"`cat ../VERSION`\"" -g -Wall -c -o spim-utils.o ../CPU/spim-utils.c
In file included from ../CPU/spim-utils.c:39:
../CPU/spim.h:71:1: warning: "memcpy" redefined
In file included from /usr/include/string.h:190,
from ../CPU/spim-utils.c:36:
/usr/include/secure/_string.h:53:1: warning: this is the location of the previous definition
../CPU/spim-utils.c:501: error: expected ‘)’ before numeric constant
../CPU/spim-utils.c:504: error: expected identifier or ‘(’ before ‘{’ token
../CPU/spim-utils.c:520: error: conflicting types for ‘strtol’
/usr/include/stdlib.h:181: error: previous declaration of ‘strtol’ was here
make[1]: *** [spim-utils.o] Error 1
make: *** [spim] Error 2
然后我尝试了安装指南中的其他内容,
Lasker:spim orthogonal$ make test
make -f Makefile spim2
gcc -I. -I../CPU `cat configuration` -DTEXT_SIZE=65536 -DDATA_SIZE=131072 -DK_TEXT_SIZE=65536 -DDEFAULT_EXCEPTION_HANDLER="\"/usr/local/lib/spim/exceptions.s\"" -DSPIM_VERSION="\"`cat ../VERSION`\"" -g -Wall -c -o spim-utils.o ../CPU/spim-utils.c
In file included from ../CPU/spim-utils.c:39:
../CPU/spim.h:71:1: warning: "memcpy" redefined
In file included from /usr/include/string.h:190,
from ../CPU/spim-utils.c:36:
/usr/include/secure/_string.h:53:1: warning: this is the location of the previous definition
../CPU/spim-utils.c:501: error: expected ‘)’ before numeric constant
../CPU/spim-utils.c:504: error: expected identifier or ‘(’ before ‘{’ token
../CPU/spim-utils.c:520: error: conflicting types for ‘strtol’
/usr/include/stdlib.h:181: error: previous declaration of ‘strtol’ was here
make[1]: *** [spim-utils.o] Error 1
make: *** [spim] Error 2
出了什么问题,我该如何解决?