Linux 安装 luarocks(lua的模块管理工具)

1、简介

该软件包可以安装和更新lua的第三方模块。

2、下载地址

请在 http://luarocks.org/releases/ 页面选择需要的软件包。

wget http://luarocks.org/releases/luarocks-2.1.0.tar.gz

3、安装

tar -zxvf luarocks-2.1.0.tar.gz

cd luarocks-2.1.0

./configure --prefix=/usr/local/luarocks

make build

make install

OK了,luarock的可执行文件被安装到了 /usr/local/luarocks/bin/luarocks.

4、使用(暂时把英文直接copy过来,有时间再翻译)

使用luarocks安装lua模块的示例:

luarocks install luasocket

luarocks install luasql-sqlite3

luarocks install lpeg

luarocks install lzlib

luarocks install luafilesystem

luarocks install luasec

luarocks install md5

luarocks install luacurl

luarocks install luasql-mysql MYSQL_INCDIR=/usr/include/mysql MYSQL_LIBDIR=/usr/lib64/mysql/ (mysql的各种路径自己locate去找吧 = = !)

luarocks install lua-cjson

1.模块安装后如果在程序require的时候提示找不到相应模块则可以在luarocks和lua之间做一个软链接:

例如安装完luasql-mysql之后可能在程序中require的时候会提示找不到模块,这时候我们可以:

cd /usr/local/lib/lua/5.1/

mkdir luasql

ln -s /usr/local/luarocks/lib/lua/5.1/luasql/mysql.so /usr/local/lib/lua/5.1/luasql/mysql.so

2.运行时提示attempt to index global ‘luasql‘ (a nil value) 代码里面require "luasql.mysql"需要这样写

luasql = require "luasql.mysql"

Usage

luarocks [--server=server | --only-server=server] [--tree=tree] [--only-sources=url] [--deps-mode=mode] [VAR=VALUE]...command [argument]

Variables from the "variables" table of the configuration file can be overriden with VAR=VALUE assignments.

--server=server Fetch rocks/rockspecs from this server (takes priority over config file)
--only-server=server Fetch rocks/rockspecs from this server only (overrides any entries in the config file)
--only-sources=url Restrict downloads of sources to URLs starting with the given URL. For example, --only-sources=http://luarocks.org will allow LuaRocks to download sources only if the URL given in the rockspec starts with http://luarocks.org .
--tree=tree Which tree to operate on.
--deps-mode=mode Select dependencies mode:

How to handle the list of rocks servers given in the rocks_servers array in theconfig file.

  • one - Consider only the tree at the top of the list (possibly, the one given by the --tree flag, overriding all entries from rocks_trees), ignore all others
  • all - Consider all trees: if a dependency is installed in any tree of the rocks_trees list, we have a positive match.
  • order - Consider only trees starting from the "current" one in the order, where the "current" is either:
    • the one at the bottom of the rocks_trees list,
    • or one explicitly given with --tree
    • or the "home" tree if --local was given or local_by_default=true is configured (usually at the top of the list)

Supported commands

build Build/compile and install a rock.
download Download a specific rock or rockspec file from a rocks server.
help Help on commands.
install Install a rock.
list Lists currently installed rocks.
make Compile package in current directory using a rockspec and install it.
pack Create a rock, packing sources or binaries.
path Return the currently configured package path.
remove Uninstall a rock.
search Query the LuaRocks repositories.
show Shows information about an installed rock.
unpack Unpack the contents of a rock.

Overview of the difference between "make", "build", "install" and "pack"

luarocks install modulename downloads a binary .rock file and installs it to the local tree (falls back to "luarocks build modulename" behavior if a binary rock is not found)
luarocks build modulename downloads a .src.rock or a rockspec and builds+installs it to the local tree.
luarocks build modulename-1.0-1.linux-x86.rock extracts the rockspec from the rock and builds it as if the rockspec was passed in the command-line (i.e., redownloading sources and recompiling C modules if any).
luarocks build modulename-1.0-1.rockspec builds+installs the rock using the given rockspec downloading the sources
luarocks make modulename-1.0-1.rockspec builds+installs the rock using the rockspec using the contents of your current directory (kind of like the way make uses a Makefile) instead of downloading sources
luarocks pack modulename grabs the rock from your local tree and packs it into a binary .rock file
luarocks pack modulename-1.0-1.rockspec downloads the sources from the url and packs it into a .src.rock file

时间: 2024-10-25 05:35:39

Linux 安装 luarocks(lua的模块管理工具)的相关文章

Linux下取代top的进程管理工具 htop

一.htop 简介 This is htop, an interactive process viewer for Linux. It is a text-mode application (for console or X terminals) and requires ncurses. Comparison between htop and top In 'htop' you can scroll the list vertically and horizontally to see all

linux学习之路之模块管理和内核编译

我们知道linux内核再启动过程中,主要完成以下几种功能: 1.侦测硬件信息 2.驱动初始化(可能借助intrd文件加载硬件模块) 3.以只读方式挂载根文件系统 4.转载第一支程序init 如果我们的kernel识别不了某些硬件或者实现不了某些功能的话,那么只能将某些功能代码添加在内核当中,或者将这些功能代码做成模块的形式,kernel需要哪些模块就直接调用这些模块即可.通过这两种功能就可以实现相应的功能. 而不同的实现机制和kernel设计有关. kernel设计分为2种: 一种是单内核:这种

在Windows7上安装和使用AD DS管理工具

为什么要安装AD DS管理工具 要管理活动目录,默认只有在域控制器下才可以,管理员对活动目录的管理和维护又比较频繁,因此需要经常出入机房才能完成管理任务 用远程桌面也可以进行域管理,但有一定的安全隐患,还会产生较大的网络流量,占用宝贵的带宽资源 AD DS是微软公司基于Windows7系统推出的远程服务管理工具,默认情况下已经设置好了安全措施,可以管理活动目录上的特定功能 下载地址:Download Windows 7 Service Pack 1 (SP1) 远程服务器管理工具 http://

解析Linux内核的基本的模块管理与时间管理操作---超时处理【转】

转自:http://www.jb51.net/article/79960.htm 这篇文章主要介绍了Linux内核的基本的模块管理与时间管理操作,包括模块加载卸载函数的使用和定时器的用法等知识,需要的朋友可以参考下 内核模块管理Linux设备驱动会以内核模块的形式出现,因此学会编写Linux内核模块编程是学习linux设备驱动的先决条件. Linux内核的整体结构非常庞大,其包含的组件非常多.我们把需要的功能都编译到linux内核,以模块方式扩展内核功能. 先来看下最简单的内核模块 ? 1 2

安装Redis的图形界面管理工具phpRedisAdmin

安装Redis的图形界面管理工具phpRedisAdmin Redis还提供了一个图形界面管理工具phpRedisAdmin,与MySQL提供的phpMyAdmin页面管理工具类似,他们都是基于php代码的工具.phpRedisAdmin主要提供对key值的维护增删改查.对库的导入导出.查看info信息. 另外站在性能的角度上看,我不建议在线上redis环境中使用,毕竟phpRedisAdmin是一款对海量大数据进行管理的web界面,会消耗比较大的系统资源. 安装步骤: 1. 安装LAMP,参见

最简单的模块管理工具

<script> //模块管理工具,MyModules var MyModules = (function Manager() { var modules = {}; //创建一个空对象 function define(name, deps, impl) { /* "data",[],function(){ var name = "miku"; function getName(){ return name; } return { getName:get

【数据库】Mean web开发 02-Windows下Mongodb安装配置及常用客户端管理工具

简介 Mean是JavaScript的全栈开发框架.更多介绍 用MongoDB实现持久数据的存储是Mean Web全栈开发中的一部分. MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的.它的特点是高性能.易部署.易使用,存储数据非常方便. MongoDB的学习资料可参考: MongoDB中文社区 MongoDB 下载及安装 下载地址:https://www.mongodb.com/download-center#community 根据你

Linux基础之磁盘概念及其管理工具fdisk

引言:冯诺依曼体系中的数据存储器就是我们常说的磁盘或硬盘,它是计算机不可缺少的一个组件,下面来看看Linux中磁盘的基础概念及管理工具fdisk 实验环境CentOS7.2 磁盘概念 按磁盘属性分类有机械硬盘跟固态硬盘 (1)机械硬盘:内部真空 磁盘:正反面含有磁性物质的盘片,由一个马达固定所有磁盘转动,固定角速度 每个盘片正反面各有一个磁头,所有磁头固定在一个机械臂上 平均寻道时间:5400rpm, 7200rpm, 10000rpm, 15000rpm转速 track(磁道):每个盘片上出厂

docker学习(三) 安装docker的web可视化管理工具

1.docker是一个一款很轻便的应用容器引擎,为了更好的管理和使用docker,使用web可视化管理工具似乎更符合大多数人的需求.在这里,我给大家分享下自己使用过的几款web工具:docker UI.shipyard.portainer 因为怕自己学术不精误导了初学者,因此我就不使用术语专业名词之类的,就通篇全是通俗的语言,哪怕是一个电脑小白,也会按照这个说明,完成好相应的操作跟安装.之前网上也有很多发帖者,自己都没弄明白集群的真正含义,swarm mode 跟swarm 等概念的区别,胡乱的