美文网首页
[Lua][不使用luarocks] 生成LuaFileSyst

[Lua][不使用luarocks] 生成LuaFileSyst

作者: 吃豆腐不吐豆腐皮 | 来源:发表于2021-07-22 14:14 被阅读0次

    这是一个不需要用luarocks来安装的方案, 生成so来使用.

    (本文在linux环境下操作)

    准备

    先去github上下载源码,解压后可见目录结构

    LuaFileSystem
    打开Makefile,我们可以看到如果要生成so,可以使用make lib指令, 库将生成在src下,并命名为lfs.so Makefile

    开始

    如果执行lfs的make lib时会报下面的错,

    没有找到lua.h文件

    那么是因为lfs.c没有在系统类库目录里找到lua.h这个头文件,解决这个问题的方法也简单,
    先去lua源码包src目录下面找到这几个文件,

    需要准备的文件
    如果你的lua是使用make linux local的方式安装的, 那么这些文件不用你去lua/src下挑着找,可以直接去lua/install/include找.
    接下来我们把这些文件拷贝到luafilesystem/src下面, 并打开luafilesystem/src下的lfs.c文件,按照上面的错误提示,是在84行报的错,我们跳转过去可以看到 include的文件用<>包裹着
    这时候我们只需要把这三个文件从用<>包裹(<系统类库目录>),改成""包裹("项目当前目录")即可.
    改完的样子
    然后我们再去执行一遍make lib,记得去luafilesystem根目录下执行,因为make文件在那里.
    运行结果

    最后

    好了,这样就可以了,我们去luafilesystem/src下看看,我们要的东西就在那里.

    我们要的lfs.so文件
    接下来,就把它加到你的工程,和其他so一样, 在你的lua脚本里require "lfs",然后使用它吧 : )

    相关文章

      网友评论

          本文标题:[Lua][不使用luarocks] 生成LuaFileSyst

          本文链接:https://www.haomeiwen.com/subject/ptmemltx.html