我在这个问题上遇到了很多天。
蜡(https://github.com/probablycorey/wax仅支持armv7和armv7s架构,但我的项目使用arm64架构。
错误消息是“打开蜡脚本时出错:在预编译块中加载蜡stdlib:坏标头”。
所以我猜问题是在wax_stdlib.h中。但是这个文件是stdlib ducoment中lua脚本的预编译结果,我不知道如何在64位中预编译lua脚本。
我该如何解决?
答案 0 :(得分:1)
因为你的项目使用arm64架构,而且wax_stdlib.h是在32位预编译的......
所以,你只需要在64位预编译蜡stdlib。
首先,你需要下载lua源代码,然后cd到src目录,然后在64bit下安装,并安装
然后你应该修改luac.lua文件
- 64 b = string.sub(b,1,x - 6 - 4).." \ 0" .. string.sub(b,y + 2,y + 5) - WTF这样做吗?
- 32 - b = string.sub(b,1,x - 6).." \ 0" .. string.sub(b,y + 2,y + 5) - WTF这样做吗?
- 64 断言(f:写(string.rep(" \ 0",3 * 8)))
- 32 --assert(f:write(string.rep(" \ 0",12)))
并运行compile-stdlib.sh ...
如果你喜欢这样,它可以工作,但我真的建议你不要在64位使用蜡,因为它不支持64位......你会发现更多问题
答案 1 :(得分:0)
使用 JSPatch 可能是一种好方法。
答案 2 :(得分:-1)
这里有一个带有ARM64(和x64)更新的蜡烛 - 目前尚不清楚它的测试结果如何,但它可能很有用。