当我尝试在64位Debian上运行make prep
时,构建失败并显示错误信息
Compressed 11626 to 3357 bytes: 28 percent of original
./r3-make -qs ../src/tools/make-os-ext.r # ok, but not always
--- Make OS Ext Lib --- Version: 0
** Script error: invalid argument: %../os/none
** Where: change-dir do either either either -apply-
** Near: change-dir append %../os/none target files: [
%host-lib....
我需要重制make文件吗?这个版本的Debian的正确OS_ID是什么?是否有一个有效的OS_ID值列表?我计划在其他平台上构建rebol3,例如AROS i386。
源代码是作为zip文件从rebol github repo下载的,我从这里下载了linux x64二进制文件。在将二进制文件复制到make子目录并将其重命名为r3-make
之后,我从make子目录中输入命令make prep
。
构建Rebol 3的完整、规范的步骤列表(从"mainline" repository: https://github.com/rebol/rebol;或者"社区"存储库(https://github.com/rebolsource/r3),目前是:
- 获取Rebol 3源代码发行版
- 为您的平台下载预构建的Rebol 3二进制文件,将其保存为
r3-make
(或r3-make.exe
,如果在Windows上)在源文件的make/
子目录中。 - 从终端,在源代码的
make/
子目录下,运行:-
make make OS_ID=<tyour-target-platform>
-
make clean
-
make prep
-
make r3
(或make r3.exe
,如果在Windows上)
-
其中<tuple-of-your-target-platform>
是一个Rebol元组!使用您想要构建的目标的Rebol平台代码。几个常见的目标元组:
-
0.2.5
: 32位OSX x86. -
0.3.1
: 32位Windows x86 -
0.4.4
: 32位Linux x86
要了解更多信息,请查看源代码附带的src/tools/systems.r
。
对于您的特定情况,有两点需要注意:
- 主线rebol/rebol目前没有64位支持。(但见脚注1)
- 你使用的
r3-make
二进制文件本身必须被构建到你打算构建的新R3的构建系统所知道的目标。
这两个警告的组合,当应用到您的特定情况时,意味着您不能使用64位(0.4.40)的r3-make(您从https://www.rebolsource.net获得的Linux x64二进制文件)来引导不了解0.4.40的源的构建——实际上,您从https://github.com/rebol/rebol获得的源不了解0.4.40。
脚注1:在rebolsource/r3分支中可以获得64位支持,上面的构建指令可以工作。其他分支(如Atronix', Saphirion',或最近的统一工作,Ren/C)也支持64位构建,但它们的构建指令通常不同。