2013-06-18 24 views
1

当我跑我的终端代码,LuaSocket在Windows - 如何安装和使用它在Eclipse项目

local function main() 
    local socket = require ("socket.http") 
end 
main() 

我得到这个错误/消息:模块“socket.http”未找到:

no field package.preload['socket.http'] 
no file '/usr/local/share/lua/5.2/socket/http.lua' 
no file '/usr/local/share/lua/5.2/socket/http/init.lua' 
no file '/usr/local/lib/lua/5.2/socket/http.lua' 
no file '/usr/local/lib/lua/5.2/socket/http/init.lua' 
no file './socket/http.lua' 
no file '/usr/local/lib/lua/5.2/socket/http.so' 
no file '/usr/local/lib/lua/5.2/loadall.so' 
no file './socket/http.so' 
no file '/usr/local/lib/lua/5.2/socket.so' 
no file '/usr/local/lib/lua/5.2/loadall.so' 
no file './socket.so' 

我在Windows中使用lua,我不知道如何实现这一点。 我想使用LuaSocket从http资源库获取图像,然后获取其base64编码,而不下载图像。这与一个文件系统中的图像,这个解决方案工作:

dofile("C:\\Users\\se47596\\Desktop\\LUA\\prueba2\\src\\Base64.lua") 
imagen = "C:\\Users\\se47596\\Desktop\\LUA\\prueba2\\src\\pruebaAsyncOCR.png" 
local function main() 
    imfh = io.open(imagen,'rb') 
    imblob = imfh:read('*a') 
    imfh:close() 
    print("ImageData="..enc(imblob)) 
end 
main() 

什么文件我应该导入到我的Eclipse项目?我看到这些操作,但我不知道如何使用它们...

--package.path = "./lua/modules/?.lua" 
    --package.cpath = "./lua/modules/?.dll" 
    --local socket = require ("socket") 

我该如何构建我的项目?至少我有这样的:

myProjectFolder的

|__src 
    |__Base64.lua 
    |__main.lua 

你能帮助我吗?我想从Lua解释器中证明它。我也看到了这些解决方案,但是我无法在我的Eclipse项目中工作,也许我需要上一步。 我需要创建一个库吗?在那种情况下我怎么能做到这一点?

http://w3.impa.br/~diego/software/luasocket/installation.html http://luarocks.org/

最好的问候!

回答

3

第一个错误看起来像你在Linux中运行?

您是否成功安装了LuaSockets?它以C语言编写,所以你需要一个编译器来安装它。这可以在Microsoft开发人员工具中找到。你也可以使用cygwin。

另外,如果你有安装MinGW的,你可以先下载: https://github.com/pkulchenko/ZeroBraneStudio/blob/master/build/build-win32.sh

然后你可以运行:

bash ./build-win32.sh lua luasocket 
+0

好一点,对不起,我从别的地方(与复制粘贴问题的错误.. )。我知道我必须编译LuaSockets,但实际上我不知道如何处理这些编译的文件......我应该如何将它们添加到我的项目中?感谢您的帮助! :) – AlexMJ

+0

我测试了你的命令,我无法使它工作(在cygwin中): ' $ bash ./build-win32.sh lua luasocket ./build-win32.sh:línea36:errorsintáctico \ r''中的$''''' '/build-win32.sh:línea36:'case $ ARG in ' – AlexMJ

相关问题