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

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

2、下载地址

请在 页面选择需要的软件包。

wget

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 .  
--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  

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/18734.html