2

请提供有关在 mac 上构建 android LuaJit 的建议或解决pseudo-op: '.private_extern'汇编程序错误的一般提示。

我在 Mac 上并按照说明在 doc/install 或http://luajit.org/install.html#android中编译 LuaJit2 :

我所做的唯一更改是更改linux-x86darwin-x86获得NDK交叉编译器。我还添加了TARGET_SYS=Linux(我尝试过使用和不使用)每个安装说明:“只要主机操作系统和目标操作系统不同,您就需要指定TARGET_SYS,否则会出现汇编程序或链接器错误……”</p>

所以我的构建脚本如下所示:

NDK=$ANDROID_NDK
NDKABI=8
NDKVER=$NDK/toolchains/arm-linux-androideabi-4.4.3
NDKP=$NDKVER/prebuilt/darwin-x86/bin/arm-linux-androideabi-
NDKF="--sysroot $NDK/platforms/android-$NDKABI/arch-arm"

make HOST_CC="gcc -m32" CROSS=$NDKP TARGET_SYS=Linux TARGET_FLAGS="$NDKF"

我的$ANDROID_NDK观点r8b NDK。但我也尝试了r8and r7,并且我尝试gcc 4.6了 with r8b。在所有情况下,我都会遇到类似的错误。

==== 构建 LuaJIT 2.0.0-beta9 ====
使-C src
ASM lj_vm.o
lj_vm.s:汇编器消息:
lj_vm.s:5:错误:未知伪操作:`.private_extern'
lj_vm.s:8:错误:未知伪操作:`.private_extern'
lj_vm.s:25:错误:未知伪操作:`.private_extern'

…
4

2 回答 2

2

我不确定,但我认为当您第一次尝试构建时,您在构建不成功后TARGET_SYS=Linux忘记了目录中的干净*.o文件。src/host

出于这个原因,您已经看到了很多错误,例如:Error: unknown pseudo-op: '.private_extern'

要清理所有生成和构建的文件,请运行make clean

于 2014-11-20T15:28:23.153 回答
0

我能够毫无问题地构建 LuaJIT 2.0.0-beta10。发布的问题是在构建 beta9 或更低版本时:看起来他们修补了任何问题。

于 2012-09-13T23:23:58.973 回答