**创建定制版本的Luarocks的步骤**
我需要定制一个Luarocks库。
假设我使用以下命令进行安装:
sudo luarocks install lua-abc
如果我想要自己的内部定制版本的该库,我该如何在我的openresty服务器上添加?
Luarocks是否只是从Github下载代码,然后将其保存到特定文件夹中?(如果是,那么是哪个文件夹?)
LuaRocks在使用自己的可执行文件名和编译器CC时有些靠运气。有些依赖项如cmake是必要的,以使LuaRocks下载C和C++源代码并编译成共享库,例如LuaSocket将生成一个文件core.so,其中require将执行luaopen_libluasocket(lua_State * L);函数,该函数位于.so文件中。
为了让我能够在LuaConsole(我替换了lua.c并很快要替换luac.c的CLI应用程序)中使用LuaRocks,我不得不修改安装后的实际文件。这是链接:https://github.com/tilkinsc/LuaConsole/wiki/LuaRocks-Support-Linux-GCC
基本上要点是:LuaRocks默认情况下针对开发人员而非普通用户。因此,请继续运行您的./configure,我不确定它是否支持--prefix=XXX,但您需要编辑site_config_x_x.lua文件以添加site_config.LUA_INTERPRETER=[[luaw]] -- lua解释器名称,并将luarocks shell脚本内的解释器调用实际切换。那个特定的部分在此处有更好的解释:https://github.com/tilkinsc/LuaConsole/wiki/LuaRocks-Support-Windows-MinGW。在那里,我简单地使用了"luaw" "C:\Program Files (x86)\LuaRocks\luarocks.lua" "-n" %*代替他们的命令...而\*则是所有参数的别称,即传递所有参数。
然后,在完成所有这些工作之后,你需要设置LUA_CPATH和LUA_PATH来搜索你的文件。这取决于安装情况,但一个查找的命令是luarocks path --bin,它会将其转储出来。如果您希望,可以将其添加到LUA_INIT环境变量中,但我在Windows上使用自己动态设置路径变量的方式:https://gist.github.com/tilkinsc/f6718ca61d76085b064c3dca02f96017。或者,您可以自己设置package.path和package.cpath...但我不建议这样做。
一旦让它正常工作,LuaRocks就很棒 :D
安装必要的构建工具
sudo apt-get install build-essential
cd /usr/local/src/
从此处浏览下载所需版本
tar -xvf luarocks-3.2.1.tar.gz
cd luarocks-3.2.1
./configure
make build
sudo make install
- Lua 虚拟机加密load(string.dump(function)) 后执行失败问题如何解决
- 我想创建一个 Nginx 规则,禁止访问
- 如何将两个不同的lua文件合成一个 东西有点长 大佬请耐心看完 我是小白研究几天了都没搞定
- 如何在roblox studio中1:1导入真实世界的地形?
- 求解,lua_resume的第二次调用继续执行协程问题。
- 【上海普陀区】内向猫网络招募【Skynet游戏框架Lua后端程序员】
- SF爱好求教:如何用lua实现游戏内调用数据库函数实现账号密码注册?
- Lua实现网站后台开发
- LUA错误显式返回,社区常见的规约是怎么样的
- lua5.3下载库失败
- 请问如何实现文本框内容和某个网页搜索框内容连接,并把网页输出来的结果反馈到另外一个文本框上
- lua lanes多线程使用
- 一个kv数据库
- openresty 有没有比较轻量的 docker 镜像
- 想问一下,有大佬用过luacurl吗
- 在Lua执行过程中使用Load函数出现问题
- 为什么 neovim 里没有显示一些特殊字符?
- Lua比较两个表的值(不考虑键的顺序)
- 有个lua简单的项目,外包,有意者加微信 liuheng600456详谈,最好在成都
- 如何在 Visual Studio 2022 中运行 Lua 代码?

根据情况而定,如果软件包包含形式为 C 库的外部依赖项,则会下载文件并进行编译,然后将其复制到默认路径中。 通常默认的路径有:
/usr/local/lib/lua/5.*/usr/local/share/lua/5.*luarocks 下载到
/usr/local/lib/luarocks/rocks/。