安装Lua套接字库
问题描述:
我可能过度或失明。我想学习与Lua联网,因此我必须安装socket
库,所以我可以很容易地要求它,但我不知道,我应该“需要”哪些文件。这个例子说:安装Lua套接字库
local socket = require("socket")
但正如我所说,我不知道哪些文件,我应该有,如果我用socket.lua
它不工作,我得到:No files found
。
我从这里的lib:Lua socket download
或者,有另一种方式来安装插座的lib?
答
当您使用require
加载模块时,Lua使用包路径来确定在哪里查找模块。看看Lua手册中的Modules部分。具体而言,关于package.path
和package.cpath
的部分。
package.path:由所使用的路径需要以搜索一个Lua装载机(.lua模块)
package.cpath:由所使用的路径需要以搜索一个C加载程序(的.so/.DLL模块)
您可以检查一下当前的路径是:
print(package.path..'\n'..package.cpath)
如果您安装LuaSocket到当前的包路径中的一个位置的Lua应该能够找到并加载它。
或者,您可以在调用require
之前修改程序包路径。例如,如果您创建一个文件夹为您的项目并提取LuaSocket库项目文件夹中调用libs
的子文件夹:
Project
|
> libs
|
> lua
|
> socket
> socket
> mime
您可以将require
插座之前设置相对于项目的包路径库(Linux上的替代/?.dll
为/?.so
):
package.path = package.path..';./libs/lua/?.lua'
package.cpath = package.cpath..';./libs/socket/?.dll;./libs/mime/?.dll'
local socket = require 'socket'
答
使用此命令在Linux系统上:
#luarocks install luasocket
使用的下一个命令来查看路径配置
#luarocks
您需要使用默认的Linux帐户(请参阅:配置):
$lua
> socket = require ("socket")
或使用本:
> socket = require 'socket'
是[安装说明?](http://w3.impa.br/~diego/software/luasocket/installation.html) – 2012-04-27 19:51:46
可能是'#luarocks安装luaso cket'命令可以帮助你。 – 2017-11-02 23:27:04