Index: script/ygopro_编译.html ================================================================== --- script/ygopro_编译.html +++ script/ygopro_编译.html @@ -149,13 +149,34 @@

如果有过停电或电烧电器的经历,那么应该会有「电不稳定」的印象。

电平受制于电的不稳定,所以它是不精确的。

电平是低于某个临界点,就属于低电平,高于某个临界点,就属于高电平。

这个临界点是人定的。

接下来,不讲底层了。

-

01 -往上可以组建逻辑门,而汇编编程语言可以指导逻辑门的运行。但问题在于各个商家给逻辑门定的汇编语言是不一样的,于是我们需要一个通用的汇编语言,而这就是 +

01 往上可以组建逻辑门,而汇编编程语言可以指导逻辑门的运行。

+

但问题在于各个商家给逻辑门定的汇编语言是不一样的,于是我们需要一个通用的汇编语言,而这就是 c 语言的别称——「便携式汇编语言」。

+

一门编程语言可以大致分为三部分:语法、标准库、自定义库。

+

lua 会用到 c 语言的标准库,而我们从上面的过程可以看到系统肯定会有 c +语言标准库。

+

加个参数:

+
cl /MD /O2 /c ./lib/lua/src/*.c
+

这样子, lua 就会采用系统自带的 c 语言标准库了。

+

但仅仅是这样子还不行,因为 ygopro 不是一个纯 c 语言的项目。

+

这里的 lua 需要采用 cpp ,也就是 c++的方式进行编译:

+
cl /TP /MD /O2 /c ./lib/lua/src/*.c
+

然后由于 cpp +的特性,你会收到一堆报错,此时编译器会提醒你再加个参数:

+
cl /EHsc /TP /MD /O2 /c ./lib/lua/src/*.c
+

好,大功告成,这就算把 lua 编译完了。

+

不过,这时候,你的目录下会有一大堆的 obj 文件,不好看。

+

于是输入:

+
lib /OUT:lua.lib *.obj
+

这就把所有的 obj 文件合成了一个文件了。所以可以把 obj +文件全部删了:

+
del *.obj
+

也就是说,我们由一堆文件中编译出了一个文件:

+
lua.lib