如何在 love2d 中使用外部库

How to use external library with love2d

我正在尝试将 luafun 库与 love2d 一起使用。 运行 lua main.lua,但是 love . 抱怨缺少 fun 库。

我已经安装了 luafunluarocks

有两个选项。

如果你想分发你正在构建的任何东西,你几乎肯定不希望用户安装 Lua、luarocks 等等 - 所以最好的方法是简单地将任何库放入你的 game/program/... 所在的文件夹。(如果一个库包含编译的东西,你需要根据 platform/OS 构建,然后你实际上需要一个构建过程来吐出各种变体, 但如果全是-Lua, 没有特定于平台的东西, 所以只需复制它即可。)

另一个选项(主要是当你只需要它在你的机器上工作时)是调整 package.path 然后 love 会发现一切正常。如果您在计算机上使用 LUA_INIT / LUA_PATH,Love 会忽略它们,但您可以使用 os.getenvdofile / load(code)() 和朋友手动获取和处理它们。 (作为最简单的特殊情况,如果 luarocks 安装在标准 Lua 搜索路径中,说 require "luarocks.loader" 可能足以让所有 luarocks 安装的包工作。)