新聞中心
Lua是一種輕量級(jí)的腳本語(yǔ)言,主要用于嵌入式系統(tǒng)和游戲開(kāi)發(fā)領(lǐng)域。同時(shí),Lua還擁有強(qiáng)大的擴(kuò)展能力,用戶可以通過(guò)加載各種模塊來(lái)增強(qiáng)Lua的功能。在本文中,我們將介紹如何在Linux下添加Lua的ON庫(kù)。

創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比張家川回族自治網(wǎng)站開(kāi)發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式張家川回族自治網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋張家川回族自治地區(qū)。費(fèi)用合理售后完善,十年實(shí)體公司更值得信賴。
ON是一種輕量級(jí)的數(shù)據(jù)交換格式,被廣泛應(yīng)用于Web應(yīng)用程序和API接口的數(shù)據(jù)傳輸中。在Lua開(kāi)發(fā)中,處理ON格式數(shù)據(jù)非常常見(jiàn),因此添加一個(gè)ON庫(kù)是非常必要的。
在Linux下添加Lua的ON庫(kù)需要以下步驟:
步驟一:下載ON庫(kù)源代碼
當(dāng)然,首先需要確認(rèn)系統(tǒng)中已經(jīng)安裝了Git,如果沒(méi)有安裝,需要使用以下命令安裝:
“`sudo apt-get update “`
“`sudo apt-get install git“`
然后,可以通過(guò)以下命令下載ON庫(kù)的源代碼:
“`git clone https://github.com/rxi/json.git“`
該命令將在當(dāng)前目錄下創(chuàng)建一個(gè)名為“json”的文件夾,并將ON庫(kù)的源代碼下載到該文件夾中。
步驟二:編譯ON庫(kù)
下載ON庫(kù)的源代碼后,需要編譯生成可用的庫(kù)文件。進(jìn)入json目錄,使用以下命令編譯ON庫(kù):
“`make“`
編譯完成后,會(huì)在json目錄下生成一個(gè)名為“json.so”的動(dòng)態(tài)鏈接庫(kù)文件。該文件就是我們需要添加到Lua中使用的ON庫(kù)文件。
步驟三:配置Lua的路徑
在成功編譯生成ON庫(kù)文件后,需要將ON庫(kù)文件的路徑加入到Lua的路徑中??梢酝ㄟ^(guò)以下命令,查看當(dāng)前Lua的路徑:
“`echo $LUA_PATH“`
該命令會(huì)輸出Lua的路徑信息,如果該信息為空,則需要設(shè)置Lua的路徑。
可以通過(guò)以下命令設(shè)置Lua的路徑:
“`export LUA_PATH=’./?.lua;/usr/share/lua/5.1/?.lua;/usr/share/lua/5.1/?/init.lua;/usr/lib/lua/5.1/?.lua;/usr/lib/lua/5.1/?/init.lua;./json.so;/usr/local/lib/lua/5.1/json.so;/usr/local/lib/lua/5.1/?.so;/usr/lib/lua/5.1/?.so;/usr/lib/lua/5.1/loadall.so’“`
該命令將當(dāng)前目錄、系統(tǒng)自帶的Lua庫(kù)以及剛剛生成的ON庫(kù)添加到Lua的路徑中。在設(shè)置成功后,查看路徑的命令返回值應(yīng)該包含“./json.so”和“/usr/local/lib/lua/5.1/json.so”。
步驟四:測(cè)試ON庫(kù)
到這里,ON庫(kù)已經(jīng)成功添加到Lua中了。可以通過(guò)以下代碼測(cè)試ON庫(kù)是否可用:
“`require”json”“`
如果不出現(xiàn)錯(cuò)誤,說(shuō)明ON庫(kù)已經(jīng)加載進(jìn)來(lái)了。
可以使用下面這段示例代碼來(lái)測(cè)試ON庫(kù)的功能:
“`
local json = require “json”
local tbl = { a = 1, b = “hello”, c = { “world”, 123 } }
local str = json.encode(tbl)
print(str)
local tbl2 = json.decode(‘{“a”:1, “b”:”hello”, “c”:[“world”, 123]}’)
print(tbl2.b, tbl2.c[1])
“`
該代碼定義了一個(gè)包含不同數(shù)據(jù)類型的table,使用json.encode將其轉(zhuǎn)換成ON格式的字符串,并輸出到控制臺(tái)上。然后再使用json.decode將ON格式的字符串轉(zhuǎn)換成table,并從中獲取其中的數(shù)據(jù)并輸出到控制臺(tái)上。
參考本文的步驟進(jìn)行操作后,即可成功地在Linux下添加Lua的ON庫(kù),為L(zhǎng)ua開(kāi)發(fā)提供更便捷的數(shù)據(jù)處理能力。
相關(guān)問(wèn)題拓展閱讀:
- PHP接收json 并將接收數(shù)據(jù)插入數(shù)據(jù)庫(kù)的實(shí)現(xiàn)代碼
- 如何配置一套優(yōu)雅的Lua開(kāi)發(fā)環(huán)境
- ubuntu下lua如何安裝
PHP接收json 并將接收數(shù)據(jù)插入數(shù)據(jù)庫(kù)的實(shí)現(xiàn)代碼
最近有一個(gè)需求,前端向后臺(tái)提交json,后臺(tái)解析并且將提交的值插入數(shù)據(jù)庫(kù)中,
難點(diǎn)
1、php解析json(這個(gè)不算難點(diǎn)了,網(wǎng)上實(shí)例一抓一大把)
2、解析json后,php怎樣拿到該拿的值
prepare($insert_order_product_sql);
$result
->
bind_param(“sss”,
$order_id,$list_product_id,$list_product_number);
$result->execute();
}
//–添加塵差訂單信息
$insert_order_sql=”INSERT
INTO
tbl_order
(order_id,buyer_id,seller_id,all_price)
VALUES
(?,?,?,?)”;
$result=$sqlconn->prepare($insert_order_sql);
$result->bind_param(“ssss”,$order_id,$buyer_id,$seller_id,$all_price);
$result->execute();
$result
->
close();
$sqlconn
->
close();
?>
投稿者信息
昵稱:
Hola
Email:
如何配置一套優(yōu)雅的Lua開(kāi)發(fā)環(huán)境
優(yōu)雅Lua發(fā)環(huán)境
優(yōu)雅Lua發(fā)環(huán)境至少包含幾點(diǎn):
安裝適合需求新穩(wěn)定版Lua
安裝合適Lua包管理器
源碼安裝(合理組織安裝目錄設(shè)置環(huán)境變量使Lua環(huán)境更易用且易于管理)
版本選擇
首先我要關(guān)注前流行各種Lua版本脊改臘(5.1×5.2×5.3x)何選擇我觀點(diǎn)根據(jù)自需求選擇適合自新穩(wěn)定版
我環(huán)境用做基于Openresty(OpenrestyNginx與其Http_lua模塊結(jié)合衍版本)Web應(yīng)用發(fā)OpenrestyLua代碼執(zhí)行通LuaJit解析加速LuaJit基于Lua5.1xABI發(fā)Openresty官明確指使用LuaJit運(yùn)行Lua代碼優(yōu)案所毋庸置疑Lua5.1x適合我新穩(wěn)定版Lua5.1.5
安裝部署
相比brew、apt-get、 yum等安裝式我更推薦使用源碼安裝幫助我整環(huán)境細(xì)節(jié)更認(rèn)識(shí)握合理組織安裝目錄結(jié)合環(huán)境變量設(shè)置便于使用管理
載并解壓Lua源碼:
wget
tar zxvf lua-5.1.5.tar.gz
cd lua-5.1.5
打Makefile看信息:
PLAT= none #安裝平臺(tái)默認(rèn)平臺(tái)none
INSTALL_TOP= /usr/local #安裝跟目錄默認(rèn)/usr/local
# Convenience platforms targets. #源碼所支持平臺(tái)
PLATS= aix ansi bsd freebsd generic linux macosx mingw posix solaris
INSTALL_TOP修改既定安裝目錄保存
INSTALL_TOP= /usr/local/lua-5.1.5
繼續(xù)步驟進(jìn)行安裝:
make macosx #編譯平臺(tái)設(shè)置macosx其平臺(tái)直接macosx替換即make linux
make macosx install #安裝平臺(tái)設(shè)置macosx
功安裝:
? ~/Desktop/ ll /usr/local/lua-5.1.5
total 0
drwxr-xr-x 4 root wheel 136B:48 bin
drwxr-xr-x 7 root wheel 238B:48 include
drwxr-xr-x 4 root wheel 136B:48 lib
drwxr-xr-x 3 root wheel 102B:48 man
drwxr-xr-x 3 root wheel 102B:48 share
運(yùn)行l(wèi)ua -v查看所櫻滑安裝Lua版本
? ~/Desktop/ lua -v
zsh: command not found: lua
? ~/Desktop/ ln -sf /usr/local/lua-5.1.5/bin/lua /usr/local/bin/lua
? ~/Desktop/ lua -v
Lua 5.1.5 Copyright (C)Lua.org, PUC-Rio
安裝目Lua執(zhí)行殲并文件優(yōu)雅處于使用源碼安裝組織安裝目錄使我更便管理Lua環(huán)境今Lua5.1.5版本相關(guān)ABI、Lua包等安裝安裝目錄libshare路徑我甚至定義LUA_PATH=/usr/local/lua-5.1.5更便引用lua.h等做相關(guān)模塊發(fā)
指定安裝目錄/usr/local/lua-5.1.5并PATH環(huán)境變量所直接執(zhí)行l(wèi)ua報(bào)command not found: lua我使用添加軟連接式執(zhí)行文件鏈接PATH路徑達(dá)同效,直接/usr/local/lua-5.1.5/bin添加環(huán)境變量PATH
版本共存
使用源碼安裝實(shí)現(xiàn)版本共存
? ~/Desktop/luarocks-2.2.2/ ll /usr/local/lua*
/usr/local/lua:
/usr/local/lua-5.1.5:
/usr/local/lua-5.2.3:
/usr/local/lua-5.3.1:
? // ll /usr/local/bin/lua*
lrwxr-xr-x 1 root admin 28B:16 /usr/local/bin/lua -> /usr/local/lua-5.1.5/bin/lua
lrwxr-xr-x 1 root admin 28B:08 /usr/local/bin/lua52 -> /usr/local/lua-5.2.3/bin/lua
lrwxr-xr-x 1 root admin 28B:12 /usr/local/bin/lua53 -> /usr/local/lua-5.3.1/bin/lua
lrwxr-xr-x 1 root admin 29B:12 /usr/local/bin/luac -> /usr/local/lua-5.1.5/bin/luac
lrwxr-xr-x 1 root admin 29B:08 /usr/local/bin/luac52 -> /usr/local/lua-5.2.3/bin/luac
lrwxr-xr-x 1 root admin 29B:11 /usr/local/bin/luac53 -> /usr/local/lua-5.3.1/bin/luac
ubuntu下lua如何安裝
Lua 是一個(gè)小巧的腳本語(yǔ)言。是巴西里約熱內(nèi)盧天主教大學(xué)(Pontifical Catholic University of Rio de Janeiro)里的一個(gè)研究小組,由Roberto Ierusalimschy、Waldemar Celes 和 Luiz Henrique de Figueiredo所組成并于1993年開(kāi)發(fā)。 其設(shè)計(jì)目的是為了嵌入應(yīng)用程序中,從而為應(yīng)用程序提供靈活的擴(kuò)展和定制功能。Lua由標(biāo)準(zhǔn)C編寫(xiě)而成,幾乎在所有操作系統(tǒng)和平臺(tái)返信上都可以編譯,運(yùn)行。Lua并沒(méi)有提供強(qiáng)大的庫(kù),這是由它的定位決定的。所以Lua不適合作為開(kāi)發(fā)獨(dú)立應(yīng)用程序的語(yǔ)言。Lua 有一個(gè)同時(shí)進(jìn)行的JIT項(xiàng)目,提供在特定平臺(tái)上的即時(shí)編譯功能。
Lua腳本可以很容易的被C/C++ 代碼調(diào)用,也可以反過(guò)來(lái)調(diào)用C/C++的函數(shù),這使得Lua在應(yīng)用程序中可以被廣泛應(yīng)用。不僅僅作為擴(kuò)展腳本,也可以作為普通的配置文件,代替XML,ini等文件姿襪格式,并且更容易理解和維護(hù)。Lua由標(biāo)準(zhǔn)C編寫(xiě)而成,代碼簡(jiǎn)潔優(yōu)美,幾乎在所有操作系統(tǒng)和平臺(tái)上都可以編譯,運(yùn)行。 一個(gè)完整的Lua解釋器不過(guò)200k,在目前所有腳本引擎中,Lua的速度是最快的。這一切都決定了Lua是作為嵌入式腳本的更佳選擇。
Ubuntu下Lua開(kāi)發(fā)環(huán)境安裝:
1、sudo apt-get install lua
2、sudo apt-get install lua5.1-0-dev
注:
之一條命令用來(lái)安裝Lua環(huán)境,第二條命令用來(lái)安裝Lua的相關(guān)頭文件及庫(kù)文件
由于Lua的頭文件安裝在/usr/include/lua5.x,庫(kù)文件使用locate liblua可以查找到安裝路徑,如下:
/usr/lib/i386-linux-gnu/liblua5.1-c++.a
/usr/lib/i386-linux-gnu/liblua5.1-c++.so
/usr/lib/i386-linux-gnu/liblua5.1-c++.so.0
/usr/lib/i386-linux-gnu/liblua5.1-c++.so.0.0.0
/usr/lib/i386-linux-gnu/liblua5.1.a
/usr/lib/i386-linux-gnu/liblua5.1.so
/usr/lib/i386-linux-gnu/liblua5.1.so.0
/usr/lib/i386-linux-gnu/liblua5.1.so.0.0.0
建議在安裝完畢后,
ln -s lua5.x lua
生成一個(gè)軟連接,這樣在包含頭文件的時(shí)候,使用
#include “l(fā)ua/xxx.h”
不需要關(guān)心當(dāng)前的版本
(當(dāng)然,不同版本間的一些差異,跡世激需要注意)
在實(shí)際編譯時(shí),如果使用g++編譯需要添加
#ifdef __cplusplus
extern “C” {
#endif
#include “l(fā)ua/xxx.h”
#ifdef __cplusplus
}
#endif
(編譯時(shí),使用C語(yǔ)言接口)
在連接時(shí)需要指明使用的庫(kù)文件 -llua5.1
1網(wǎng)站下載LUA包
,ctrl+F2輸入gnome-terminal打開(kāi)終端
2、下載ubuntu的編譯支持
sudo apt-get install build-essential
注意,這里不僅僅是安裝gcc而已,還包括很多其他工伏戚具。
3、下載libreadline相缺慶陵關(guān)支持,這差悔個(gè)東西在編譯時(shí)需要用到,無(wú)奈。
sudo apt-get install libreadline5
sudo apt-get install libreadline5-dev
4、編譯以及安裝
tar xzvf lua-5.1.2.tar.gz
cd lua-5.1.2
make linux
sudo make install
這里make的參數(shù)linux也可以是其他操作系統(tǒng),視具體情況而定。
5、測(cè)試
$ lua
Lua 5.1.2 Copyright (C)Lua.org, PUC-Rio
>
按下Ctrl+D退出。
linux lua 添加json庫(kù)的介紹就聊到這里吧,感謝你花時(shí)間閱讀本站內(nèi)容,更多關(guān)于linux lua 添加json庫(kù),Linux下如何添加Lua的ON庫(kù),PHP接收json 并將接收數(shù)據(jù)插入數(shù)據(jù)庫(kù)的實(shí)現(xiàn)代碼,如何配置一套優(yōu)雅的Lua開(kāi)發(fā)環(huán)境,ubuntu下lua如何安裝的信息別忘了在本站進(jìn)行查找喔。
成都網(wǎng)站推廣找創(chuàng)新互聯(lián),老牌網(wǎng)站營(yíng)銷公司
成都網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)(www.cdcxhl.com)專注高端網(wǎng)站建設(shè),網(wǎng)頁(yè)設(shè)計(jì)制作,網(wǎng)站維護(hù),網(wǎng)絡(luò)營(yíng)銷,SEO優(yōu)化推廣,快速提升企業(yè)網(wǎng)站排名等一站式服務(wù)。IDC基礎(chǔ)服務(wù):云服務(wù)器、虛擬主機(jī)、網(wǎng)站系統(tǒng)開(kāi)發(fā)經(jīng)驗(yàn)、服務(wù)器租用、服務(wù)器托管提供四川、成都、綿陽(yáng)、雅安、重慶、貴州、昆明、鄭州、湖北十堰機(jī)房互聯(lián)網(wǎng)數(shù)據(jù)中心業(yè)務(wù)。
網(wǎng)站題目:Linux下如何添加Lua的ON庫(kù) (linux lua 添加json庫(kù))
網(wǎng)站鏈接:http://fisionsoft.com.cn/article/cogpisg.html


咨詢
建站咨詢
