成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

詳解Lua程序語言安裝環境

移動開發 iOS
Lua 沒有 "main" 程序的概念:它只能 嵌入 一個宿主程序中工作,這個宿主程序被稱作 embedding program 或簡稱為 host 。

Lua程序語言安裝環境是本文要介紹的內容,Lua 是一個擴展式程序設計語言,它被設計成支持通用的過程式編程,并有相關數據描述的設施。 Lua 也能對面向對象編程,函數式編程,數據驅動式編程提供很好的支持。它可以作為一個強大、輕量的腳本語言,供任何需要的程序使用。 Lua 以一個用 clean C 寫成的庫形式提供。(所謂 Clean C ,指的 ANSI C 和 C++ 中共通的一個子集)

作為一個擴展式語言,Lua 沒有 "main" 程序的概念:它只能 嵌入 一個宿主程序中工作,這個宿主程序被稱作 embedding program 或簡稱為 host 。宿主程序可以通過調用函數執行一小段 Lua 代碼,可以讀寫 Lua 變量,可以注入 C 函數讓 Lua 代碼調用。這些擴展的 C 函數,可以大大的擴展了 Lua 可以處理事務的領域,這樣就可以訂制出各種語言,而它們共享一個統一的句法格式的框架。

 Lua 的官方發布版就包含了一個叫做 lua 的簡單的宿主程序,它用 Lua 庫提供了一個保證獨立的 Lua 解釋器。Lua 是一個自由軟件,它的使用許可決定了對它的使用過程一般沒有任何保證。

Lua的安裝(linux下),兩種方式:

(方式一)

我的操作系統是:

  1. Linux oracle-desktop 2.6.31-14-generic #48-Ubuntu SMP Fri Oct 16 14:05:01 UTC 2009 x86_64 GNU/Linux 

使用sudo apt-get install lua5.1命令直接安裝上lua,但是在c語言中嵌入lua的時候會說找不到lua.h等文件,因此如果只是簡單的運行lua命令執行一些lua語句,那么這個是足夠了,但是如果要是在c語言中嵌入,就必選采用方式二。

(方式二)

我的操作系統是:

  1. Linux oracle-desktop 2.6.31-14-generic #48-Ubuntu SMP Fri Oct 16 14:05:01 UTC 2009 x86_64 GNU/Linux 

(1)先去Lua的官網(http://www.lua.org/ftp/)下載最新發布包,我選擇的是 lua-5.1.4.tar.gz

(2)使用命令tar -xzvf  lua-5.1.4.tar.gz

(3)cd lua-5.1.4, 然后執行make,會提示讓你輸入make 系統,因為我的系統是linux的,因此我輸入make linux

  1. 但運行的過程報錯了error:readline/readline.h:no such file or directory,  
  2. 上網搜了一下需要安裝readline-6.1.tar.gz,因此我去wget   
  3. http://www.sfr-fresh.com/unix/misc/readline-6.1.tar.gz   
  4. tar -zxvf readline-6.1.tar.gz,cd ~~ ./configure && make && make install  , sudo ldconfig,  
  5. 再運行make linux,不報readline的錯誤,但是又提示  
  6. /usr/bin/ld: cannot find -lncurses  
  7. 在網上搜了一下,還得下載ncurses安裝,wget  
  8.  http://ftp.gnu.org/pub/gnu/ncurses/ncurses-5.7.tar.gz,   
  9. tar -xvf ncurses -5.7.tar.gz,然后 cd ncurses-5.7 ,./configure,make,make install,  
  10. 再運行make linux就一切ok了。 

(4)sudo make install

安裝完成。

測試lua是否安裝成功,直接運行lua就能進入編譯模式。

lua安裝完成后,可以按照lua手冊提供的c中嵌入lua的例子,將下面的程序放到a.c中:

  1. #include <stdio.h> 
  2. #include <lua.h> 
  3. #include <lauxlib.h> 
  4. #include <lualib.h> 
  5.  
  6. int main(int argc, char *argv[])  
  7. {  
  8.         char line[BUFSIZ];  
  9.         lua_State *L = lua_open();  
  10.         luaL_openlibs(L);  
  11.         while (fgets(line, sizeof(line), stdin) != 0) printf("%s/n",line);  
  12.  
  13.         lua_close(L);  
  14.         return 0;  

然后使用如下命令

  1. gcc -I/usr/local/include/ -L/usr/local/lib/ -lm -DLUA_USE_READLINE a.c /usr/local/lib/liblua.a -ldl 

運行即可編譯通過。

如果直接運行gcc a.c 會報如下錯誤:

  1. /tmp/ccI4JYia.o: In function `main':  
  2. a.c:(.text+0x28): undefined reference to `luaL_newstate'  
  3. a.c:(.text+0x3e): undefined reference to `luaL_openlibs'  
  4. a.c:(.text+0x81): undefined reference to `lua_close'  
  5. collect2: ld returned 1 exit status 

這是因為lua調用了標準庫里的C API,因此要加上數據庫。

小結:詳解Lua程序語言安裝環境的內容介紹完了,希望通過本文的學習能對你有所幫助!

責任編輯:zhaolei 來源: 互聯網
相關推薦

2012-08-13 09:31:33

程序

2011-08-25 10:24:27

Lua

2011-08-24 11:03:33

LUA環境 安裝

2011-08-25 14:03:32

UbuntuLUA安裝

2012-08-13 09:40:12

語言編程語言程序語言

2009-03-02 09:40:13

程序員程序語言開發

2011-09-06 17:45:14

LUA開發環境Decoda

2017-07-10 17:00:24

程序語言語言特性

2011-08-25 15:02:17

Lua環境搭建EditPlus

2011-08-24 14:33:14

LUA開發環境Decoda

2011-05-19 14:00:51

PHP單引號雙引號

2011-07-15 17:05:14

2012-06-27 10:28:12

編程語言語言學習多門語言

2014-02-25 10:35:37

神經學程序語言

2011-09-01 19:06:57

UbuntuLua安裝環境

2015-08-17 16:22:36

大數據

2014-08-01 10:06:36

大數據

2011-08-24 17:15:33

Lua源代碼文件

2014-08-01 10:39:52

大數據程序語言

2019-04-19 08:15:19

微軟瀏覽器Windows
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日日久 | 91久久精品国产 | 亚洲国产成人精品女人久久久 | 欧美成人免费在线 | 国产电影一区 | 亚洲国产一区在线 | 97国产精品 | 91国产在线视频在线 | 99视频免费 | 网页av| 久久免费精彩视频 | 日韩中文一区二区三区 | 亚洲一区国产精品 | 噜久寡妇噜噜久久寡妇 | 亚洲人va欧美va人人爽 | 国产精品免费在线 | 国产欧美一区二区三区在线看蜜臀 | 亚洲精品在线观看视频 | 中文字幕在线视频观看 | 亚洲欧美激情国产综合久久久 | 欧美日韩看片 | 亚洲精品一区在线 | 欧美视频网 | 欧美一区二区三区在线播放 | 亚洲视频在线观看免费 | 一区精品在线观看 | 日日夜精品视频 | 亚洲国产精品久久久 | 久久久久久国产精品免费免费 | 色播视频在线观看 | 亚洲欧洲日本国产 | 国产精品视频在线播放 | 日韩欧美久久精品 | 国产精品久久久久久久久久久久 | 欧美激情精品久久久久 | 国产精品99久久久久久动医院 | 国产精品99久久久久久久vr | 日韩欧美国产精品一区二区三区 | 欧美一区二区三区视频在线播放 | 久久人体 | 精品日韩在线 |