我尝试在 Debian 10 上安装 Inferno。
$ git clone https://github.com/doublec/inferno
$ cd inferno
$ sh Mkdirs
$ nano mkconfig
ROOT=/root/of/the/inferno/git/clone
SYSHOST=Linux
OBJTYPE=386
$ export PATH=$PATH:`pwd`/Linux/386/bin
$ ./makemk.sh
删除旧的库和二进制文件 gcc -m32 -c -I/home/user1/inferno/Plan9/386/include -I/home/user1/inferno/include -I/home/user1/inferno/utils/include regaux.c regcomp .c regerror.c regexec.c regsub.c rregexec.c rregsub.c
上次手术后我得到了它输出
所有 lib.c 都出现致命错误:
...致命错误:/386/include/呃...
答案1
的值SYSHOST=Plan9
未正确更改为SYSHOST=Linux
in mkconfig
。
使用默认值我得到同样的错误:
$ ./makemk.sh
removing old libraries and binaries
gcc -m32 -c -I/tmp/testdir/inferno/Plan9/386/include -I/tmp/testdir/inferno/include -I/tmp/testdir/inferno/utils/include regaux.c regcomp.c regerror.c regexec.c regsub.c rregexec.c rregsub.c
In file included from /tmp/testdir/inferno/Plan9/386/include/../../include/lib9.h:1,
from /tmp/testdir/inferno/Plan9/386/include/lib9.h:1,
from regaux.c:1:
/tmp/testdir/inferno/Plan9/386/include/u.h:1:10: fatal error: /386/include/u.h: No such file or directory
#include "/386/include/u.h"
^~~~~~~~~~~~~~~~~~
compilation terminated.
用SYSHOST=Linux
它编译...
$ ./makemk.sh
removing old libraries and binaries
gcc -m32 -c -I/tmp/testdir/inferno/Linux/386/include -I/tmp/testdir/inferno/include -I/tmp/testdir/inferno/utils/include regaux.c regcomp.c regerror.c regexec.c regsub.c rregexec.c rregsub.c
ar crvs /tmp/testdir/inferno/Linux/386/lib/libregexp.a regaux.o regcomp.o regerror.o regexec.o regsub.o rregexec.o rregsub.o
a - regaux.o
a - regcomp.o
a - regerror.o
a - regexec.o
a - regsub.o
a - rregexec.o
a - rregsub.o
...