【问题标题】:Luarocks on windows not recognizing my lua_libdirWindows 上的 Luarocks 无法识别我的 lua_libdir
【发布时间】:2019-02-01 05:06:34
【问题描述】:

我想使用 luarocks 在 lua 上安装 nngraph 使用此代码

luarocks --from=https://raw.githubusercontent.com/torch/rocks/master/ install nngraph

但这给了我一个错误 它说:

错误:未能找到 Lua 库。您可能需要配置 LUA_LIBDIR。

有人有同样的经历吗?你能解决吗?

这是我的 config-5.2.lua :

rocks_trees = {
    { name = [[user]],
         root    = home..[[/luarocks]],
    },
    { name = [[system]],
         root    = [[d:\shared\ta\_bootstrap\_install\]],
    },
}
variables = {
    MSVCRT = 'MSVCRT',
    LUALIB = 'D:\\Shared\\TA\\_bootstrap\\_install\\lib\\liblua.dll.a',
    LUA_LIBDIR = 'D:\\Shared\\TA\\_bootstrap\\_install\\lib'
}
verbose = false   -- set to 'true' to enable verbose output

【问题讨论】:

  • 我只是在windows上玩LR。它工作得很好。但我使用 MSVC 编译器。尝试像liblua.dll.a 一样定义lualib。也可能值得定义 lua_dir、lua_incdir 和 lua_bindir
  • @moteus 我也试过了。但没有什么好事:(
  • 您找到解决问题的方法了吗?我想知道分辨率。
  • @Ken 抱歉,没有。所以我已经用 LUA 改成了 linux,并尝试了 python,我已经完成了我的项目。

标签: lua luarocks


【解决方案1】:

您的config-5.2.lua 文件是否位于搜索到的路径之一?我安装了独立的二进制文件(Lua 5.3 版),它搜索C:/Program Files (x86)/luarocks/config-5.3.lua%APPDATA%/luarocks/config-5.3.lua。我的系统上都不存在这些文件,我必须手动创建一个。运行不带任何参数的luarocks 命令将显示它搜索的位置。如果要使用自定义位置,可以设置LUAROCKS_CONFIG 环境变量。

我可以通过将以下变量添加到我的配置中来让我的工作(注意:我使用的是 MinGW/GCC 编译器):

rocks_trees = {
    { name = [[system]], root = [[C:/Development/Lua53]] },
}
variables = {
    LUA = 'C:/Development/Lua53/bin/lua',
    LUA_BINDIR = 'C:/Development/Lua53/bin',
    LUA_INCDIR = 'C:/Development/Lua53/include',
    LUA_LIBDIR = 'C:/Development/Lua53/lib',
    CC = 'gcc',
    LD = 'gcc',
}

CCLD 变量只有在找不到编译器或链接器时才需要(在我的系统上默认为 mingw32-gcc)。

来源:

我希望这会有所帮助。

编辑:如果一切都失败了,你可能想看看LuaDist。它是一个 Lua 发行版,有自己的包管理系统,包括 LuaRocks 和一些其他预装的库/实用程序。我还没有尝试过,但我打算。

【讨论】:

  • 谢谢先生。但是我失败了很多次并尝试了stackoverflow上的任何配置。这个也是。所以我放弃了,在 linux 和 python 中尝试更好。
猜你喜欢
  • 2021-07-26
  • 2014-06-18
  • 2014-12-22
  • 1970-01-01
  • 2021-11-13
  • 2016-10-25
  • 1970-01-01
  • 2021-08-11
  • 2023-01-31
相关资源
最近更新 更多