在Ubuntu上安装luarocks,以便同时使用lua5.1和luajit。

我想要运行像 luarocks-jit install X 这样的命令,并且让新安装的 rock 使用 luajit 作为其解释器。最终,我想通过 luajit 运行我的 busted 测试

我尝试过以下内容:

当前版本的 luarocks 在 configure 脚本中有一个" --lua-version "标志,但是它只接受"5.1"或"5.2",无法使用"jit"。我考虑编辑该脚本以使其接受"jit",但我还没有这样做。

我尝试遵循此wiki页面,但它是针对不同的操作系统编写的,我怀疑由于以下原因已经过时:

  • 我找不到它引用的很多变量的文档(LUA_BINDIR等)。
  • 我机器上的 /usr/local/bin/luarocks5.1 下的脚本与该页面上的脚本完全不同。
  • 该页面上显示的 config-X.lua 文件与我安装的文件也非常不同。

实际上,我不得不在一个非常老的 Ubuntu 版本(7.10)上进行此操作,因此很可能是我的系统已过期。无论如何,我无法使 luarocks-jit正常工作。

感谢您的帮助。

点赞
用户375735
用户375735
Nevermind, after messing with the luarocks configure script I realized that luajit is lua5.1 in a lot of ways. ./configure --lua-suffix=jit --with-lua=/usr seems to work on my system.

不用介意,我在调整 luarocks 配置脚本后意识到 luajit 在很多方面都与 lua5.1 相似。在我的系统上, ./configure --lua-suffix=jit --with-lua=/usr 似乎可以正常工作。

2014-06-27 18:37:36
用户8389590
用户8389590

更新于2021年:不再需要lua后缀


一旦您安装了您的luajit(截至今天为止的版本为2.0.5)并解压了luarocks(3.7.0),使用以下命令:

./configure --lua-version="5.1"

输出:

正在配置LuaRocks版本3.7.0...

已找到Lua解释器:/usr/bin/luajit
正在检查/usr/bin/luajit是否为Lua 5.1版本...是
已找到lua.h:/usr/include/luajit-2.0/lua.h
在PATH中找到unzip:/usr/bin

配置完成。

LuaRocks将安装在......:/usr/local
LuaRocks将在......安装rocks:/usr/local
LuaRocks配置目录......:/usr/local/etc/luarocks
使用Lua来自......:/usr

* 键入make和make install:
  与通常一样安装到/usr/local
* 键入make bootstrap:
  将LuaRocks安装到/usr/local作为rock。
2021-09-27 08:22:35