Lua-5.3.2 安裝 luasocket 的正確姿式

Lua-5.3.2 安裝 luasocket 的正確姿式

打算在個人 lua 裏使用一下 socket, 也就是經過下面這樣來加載:git

require("socket")

因而搜索了下, 關鍵字用了lua如何加載socket, 發現官方的那個站點 http://luaforge.net/projects/ 裏放着的是 luasocket-2.0.2, 按照這篇文檔lua 5.2.2編譯安裝 LuaSocket 庫中的描述去搞, 報了很多錯, 感受這麼弄太花時間, 因而修改了關鍵字爲lua5.3編譯luasocket, 此次搜到這篇LuaSocket 初探, 這才知道原做者已經把最新版的 luasocket 放到 github 上去了, 這回就簡單了, 依次執行以下命令:github

sudo git clone https://github.com/diegonehab/luasocket
cd luasocket
sudo make

很是順利地完成編譯, 而後安裝:socket

sudo make install
...
install -d /usr/local/share/lua/5.1
install -m644 ltn12.lua socket.lua mime.lua /usr/local/share/lua/5.1
install -d /usr/local/share/lua/5.1/socket
install -m644 http.lua url.lua tp.lua ftp.lua headers.lua smtp.lua /usr/local/share/lua/5.1/socket
install -d /usr/local/lib/lua/5.1/socket
install socket-3.0-rc1.so /usr/local/lib/lua/5.1/socket/core.so
install -d /usr/local/lib/lua/5.1/mime
install mime-1.0.3.so /usr/local/lib/lua/5.1/mime/core.so

奇怪, 怎麼安裝到 5.1 的目錄下去了?ui

打開 makefile 文件看看, 發現要用這條命令 make install-both, 從新來過, 至關於又編譯了一遍, 一切OK:lua

sudo make install-both
...
install -d /usr/local/share/lua/5.3
install -m644 ltn12.lua socket.lua mime.lua /usr/local/share/lua/5.3
install -d /usr/local/share/lua/5.3/socket
install -m644 http.lua url.lua tp.lua ftp.lua headers.lua smtp.lua /usr/local/share/lua/5.3/socket
install -d /usr/local/lib/lua/5.3/socket
install socket-3.0-rc1.so /usr/local/lib/lua/5.3/socket/core.so
install -d /usr/local/lib/lua/5.3/mime
install mime-1.0.3.so /usr/local/lib/lua/5.3/mime/core.so

加載試試:url

pi@rpi /opt/software/lua-5.3.2 $ lua
Lua 5.3.2  Copyright (C) 1994-2015 Lua.org, PUC-Rio
> require("socket")
table: 0x86f878
> soc = require("socket")
> print(soc._VERSION)
LuaSocket 3.0-rc1
>

很好, 如今樹莓派上能夠用 luasocket 跑一個服務端, 在 iPad 上用 Codea 跑一個客戶端, 就能夠經過 iPad 控制樹莓派了..net

另一種直接在啓動 lua 時加載 socket 的方法以下:code

pi@rpi ~/code-staff/lua-code $ lua -lsocket
Lua 5.3.2  Copyright (C) 1994-2015 Lua.org, PUC-Rio
>

這樣就直接加載進去了, 不須要再 require.blog

相關文章
相關標籤/搜索