【问题标题】:compiling lua, getting makefile CreateProcess error编译lua,得到makefile CreateProcess错误
【发布时间】:2011-05-29 20:12:30
【问题描述】:

我正在尝试编译 Lua 1.1。为什么?因为我可以。这是makefile的内容。

all:
    (cd src; make)
    (cd clients/lib; make)
    (cd clients/lua; make)

clean:
    (cd src; make clean)
    (cd clients/lib; make clean)
    (cd clients/lua; make clean)

这是我在运行 make all 时遇到的错误。

(cd src; make)
process_begin: CreateProcess((null), (cd src; make), ...) failed.
make (e=2): The system cannot find the file specified.
make: *** [all] Error 2

为什么会出现此错误?我在 WinXP-32 上。

【问题讨论】:

  • 1994 年的 Lua 1.1?这就像复古:)
  • 这是一门很棒的语言,我发现 5.1 大约有 60 个文件,所以我一直降到 1.1,但只有 6 个左右。我想了解解释器/编译器/语言/等。所以这对我来说是一个很好的开始。
  • 您可能也对此感兴趣:reddit.com/comments/63hth/…
  • 谢谢。我打算继续努力,看看语言是如何演变的(好吧,不是阅读所有版本,可能是 1.1、5.1 以及介于两者之间的版本),所以这会有所帮助!

标签: windows lua makefile


【解决方案1】:

获取lua-all.tar.gz,其中包含所有 Lua 发行版的源代码,并进行了一些更改以使其易于编译。

【讨论】:

    【解决方案2】:

    因为我可以。

    您的帖子可能有所不同。 :)

    该 makefile 是为 Linux 编写的(使用 ';' 作为命令分隔符)。 Windows 命令解释器会因此而窒息。

    您将需要编辑这些 makefile,或尝试以下命令行(我使用的是 Visual Studio 的命令行编译器,如有必要,请替换您的编译器):

    cl clients\lua\*.c clients\lib\*.c src\*.c -I include
    

    【讨论】:

    • 好的,它给了我更多错误:(。<.c src file> fatal error C1083 mm.h no file or directory。它为 mm.h 和 lua.h 执行此操作,用于大约 7 个不同的 .c 文件。我可以只编辑 Windows 的 makefile那么?这很简单吧?
    • 你需要从分发目录的根目录下进行。
    • 哦,我将文件从 /include 添加到 /src 并通过了。我想我是从根本上做的。好的,文件(我猜是 .obj?)与 vs 命令提示符所在的位置相同。
    • 如果包含lua.c,它定义了一个main,所以你现在应该有一个lua.exe
    • iolib 没有编译,它有一个错误。 iolib.c(29): C2099: initializer not a constantstatic FILE *in=stdin, *out=stdout;。我刚刚做了一个谷歌搜索,看起来我需要将它们设置为 0,但是在函数 IIRC 中初始化它们,所以可能是 main() brb
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-16
    相关资源
    最近更新 更多