2012-04-27 23 views
5

O estoy demasiado cansado o estoy ciego. Quiero aprender a trabajar en red con Lua y, por lo tanto, tengo que instalar el socket lib, así que puedo solicitarlo fácilmente, pero no sé, qué archivos debo "requerir". El ejemplo dice:Instalación de la biblioteca de socket Lua

local socket = require("socket") 

pero como he dicho, no sé qué archivos que debería incluir, si uso socket.lua no funciona y me da: No files found.

me dieron el lib desde aquí: Lua socket download

O, ¿hay otra manera de instalar el zócalo lib?

+3

Es hay algo mal con las [instrucciones de instalación?] (http://w3.impa.br/~diego/software/luasocket/installation.html) –

+0

tal vez los '# luarocks instalan luaso El comando cket' puede ayudarte. –

Respuesta

12

Cuando carga un módulo con require Lua usa las rutas del paquete para determinar dónde buscar el módulo. Eche un vistazo a la sección Modules del manual de Lua. Específicamente, la sección en package.path y package.cpath.

package.path: La ruta usada por requiere para buscar un cargador Lua (.lua módulos)
package.cpath: La ruta usada por requiere para buscar un cargador C (.so/módulos .dll)

usted puede ver que los caminos de corriente son:

print(package.path..'\n'..package.cpath) 

Si instala LuaSocket en una ubicación dentro de sus rutas de paquetes actuales Lua debe ser capaz de localizar y cargarlo.

Alternativamente, puede modificar las rutas del paquete antes de llamar al require. Por ejemplo, si crea una carpeta para su proyecto y extraer la biblioteca LuaSocket a una subcarpeta llamada libs dentro de la carpeta del proyecto:

Project 
| 
> libs 
    | 
    > lua 
     | 
     > socket   
    > socket 
    > mime 

Puede establecer las rutas de paquetes relativos a su proyecto antes de require la toma biblioteca (sustituir por /?.dll/?.so en Linux):

package.path = package.path..';./libs/lua/?.lua' 
package.cpath = package.cpath..';./libs/socket/?.dll;./libs/mime/?.dll' 
local socket = require 'socket' 
0

uso de este comando en el sistema Linux:

#luarocks install luasocket 

el uso del siguiente comando para ver las rutas CONFIGURACIÓN

#luarocks 

Es necesario utilizar la cuenta de Linux por defecto (ver: CONFIGURACIÓN):

$lua 
> socket = require ("socket") 

o usar esto:

> socket = require 'socket' 
Cuestiones relacionadas