3

出于兼容性/遗留原因,我需要在我的 64 位 Intel Mac 上从 5.0 版构建 Lua 编译器 (luac)。(5.1或更高版本无法使用。)

通过 Xcode 4.6 的 Preferences 窗口安装的开发工具。

在我“cd”到 Lua 目录后,我发出命令“make”。

cd include; make all
make[1]: Nothing to be done for `all'.
cd src; make all
make[1]: Nothing to be done for `all'.
cd src/lib; make all
make[1]: Nothing to be done for `all'.
cd src/luac; make all
gcc -o ../../bin/luac  luac.o print.o lopcodes.o -L../../lib -llua -llualib -lm
Undefined symbols for architecture x86_64:
  "_UNUSED", referenced from:
      _writer in luac.o
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status
make[1]: *** [../../bin/luac] Error 1
make: *** [all] Error 2

我不知道如何为 x86_64 配置 make 过程。有人可以帮我完成吗?

谢谢。

4

1 回答 1

2

它对我有用,但下面的输出与你的不同:

...
cd src/luac; make all
gcc -O2 -Wall -I../../include -I..      -c -o luac.o luac.c
gcc -O2 -Wall -I../../include -I..      -c -o print.o print.c
gcc -o lopcodes.o -c -O2 -Wall -I../../include -I..    -DLUA_OPNAMES ../lopcodes.c
gcc -o ../../bin/luac  luac.o print.o lopcodes.o -L../../lib -llua -llualib -lm 
cd src/lua; make all
gcc -O2 -Wall -I../../include      -c -o lua.o lua.c

make clean all先在顶层试试。

于 2013-02-17T12:25:25.060 回答