【iOS】How to compile Lua 5.4.3 5.4.4 as an iOS static library

224 阅读1分钟

下载lua源文件

curl -R -O http://www.lua.org/ftp/lua-5.4.3.tar.gz tar zxf lua-5.4.3.tar.gz cd lua-5.4.3/src src里面就是我们需要的全部lua源文件了

创建xcode工程

  1. 截屏2022-01-18 下午1.46.19.png
  2. 拖入刚才下载好src文件夹截屏2022-01-18 下午1.47.10.png 截屏2022-01-18 下午2.09.50.png 确保上图中的引用正确,否则编译的东西不能用

编译

点击run,记得区分目标机型是模拟器还是真机 运行过程会发现报错 'system' is unavailable: not available on iOS

将loslib.c中 int stat = system(cmd); 改为 int stat = nftw(cmd, unlink_cb, 64, FTW_DEPTH | FTW_PHYS); 引入头文件 #include <ftw.h> 添加方法

 int unlink_cb(const char *fpath, const struct stat *sb, int typeflag, struct FTW *ftwbuf) {
    int rv = remove(fpath);
    if (rv)
        perror(fpath);
    return rv;
}

参考 144821642485109_.pic.jpg

  • liblua_5_4_3.a就是我们需要的静态库了。也可以在工程的输出路径上配置下,不过静态库一般不会变,所以不配置也行

更新

现在的xcode版本不会出现Products目录了。

11411671588255_.pic.jpg

这样就能找到输出文件了