#Cocos2dx手游開發(fā)#2 windows下搭建lua環(huán)境

歡迎前往個人博客 駑馬點滴 和視頻空間 嗶哩嗶哩-《挨踢日志》

下載

這個過程最終將生成windows下運行l(wèi)ua的包违寿,可以從下面的百度盤中獲得:

鏈接: http://pan.baidu.com/s/1ckUlIY 密碼: 9n22


特別聲明

此篇根據(jù)英文版本翻譯荷并,屬譯文腊凶,并根據(jù)自己的操作過程舷夺,更改了部分內(nèi)容茵瘾。
原文連接:http://lua-users.org/wiki/BuildingLuaInWindowsForNewbies


序言

這是一篇手把手教你的教程踢关,它講解了在微軟的Windows操作系統(tǒng)中建立Lua運行環(huán)境的步驟。此過程中我們下載和編譯源文件時库物,只會使用到免費的工具或者Windows系統(tǒng)自帶的工具霸旗。對使用者的編程經(jīng)驗要求極低。即使對Windows平臺知之甚少的Linux用戶戚揭,這篇教程也是不無裨益的诱告。

如果你是一名經(jīng)驗豐富的編程人員, 覺得這篇教程簡單或者對自己幫助有限民晒, 可以嘗試從BuildingLua獲得更多的內(nèi)容精居。


概述及要求

希望讀者:

  • 對Window的文件系統(tǒng)有一個總體的認(rèn)知锄禽,并知道一些由操作系統(tǒng)層提供的命令來執(zhí)行一些基本的操作(如:瀏覽文件系統(tǒng)、拷貝或者移動文件靴姿、重命名文件沃但、新建一個文件夾等等)
  • 知道如何使用瀏覽器從網(wǎng)絡(luò)上下載文件
  • 知道如何安裝一個程序
  • 知道什么是文本文件以及如何使用文本編輯器創(chuàng)建它(對于本教程而言,Windows Notepad 已經(jīng)足夠佛吓,然而對于新手來說绽慈,免費的SciTE 或者TextAdept會是更好的選擇)
  • 知道什么是壓縮文件以及如何解壓它
  • 知道什么是Windows命令shell以及如何喚出它
  • 知道什么是Windows可執(zhí)行文件的搜索路徑以及如何為它添加搜索路徑(有時我們指的是系統(tǒng)路徑 或者簡單的PATH這個環(huán)境變量)

以上的某些要求并非讀者必須嚴(yán)格掌握的。在后續(xù)的過程中會對部分內(nèi)容的解釋辈毯,但讀者不應(yīng)期待過多。

本教程將按照以下的步驟進行組織:

  • 下載合適的C-編譯器(TDM GCC)搜贤;
  • 下載Lua程序源代碼包谆沃;
  • 下載適用于Lua程序源代碼包的解壓縮器(7-zip);
  • 安裝編譯器仪芒;
  • 安裝解壓縮器唁影;
  • 解壓縮文件到合適的目錄;
  • 配置編譯器掂名,使得它能夠找到資源文件据沈,并執(zhí)行Build過程(我們將使用Windows的shell腳本來執(zhí)行);

重要提示:我們強烈希望你在按照本教程操作前能夠通讀全文饺蔑。確保已經(jīng)對所有的內(nèi)容了然于心——這能夠節(jié)省你的時間锌介,并且可以規(guī)避一些可能遇到的麻煩。雖然這個過程幾乎是百分百正確的(至少我們這么期望的)猾警,但你可能并不知道是這樣的_孔祸。

備注:這個教程中,我們使用管理員權(quán)限的賬戶進行了測試并通過了檢驗发皿。我的機器是x64的機器崔慧,Windows 7 旗艦版 Service Pack 1(SP1) (Intel(R) Core(TM) i5-4570 CPU @ 3.20GHz 3.00GHz 16GB內(nèi)存)編譯器使用的是TDM64 GCC。

備注:隨著時間的推移穴墅,有一些鏈接可能已經(jīng)過期惶室。因此在下面的教程中,我們不但列出文件資源的下載鏈接玄货,還會給出文件資源的下載頁面皇钞,以供讀者自主選擇。


手把手教程

步驟 1:下載編譯器(TDM-GCC)

我們將使用TDM的開源編譯器GCC松捉。

tdm-gcc下載首頁:
http://tdm-gcc.tdragon.net/download

tdm-gcc 下載包體:
https://sourceforge.net/projects/tdm-gcc/files/

參照頁面指示完成下載鹅士。下載的文件為:tdm64-gcc-5.1.0-2.exe 這是一個45.8M的文件,希望你的網(wǎng)速夠快_惩坑。
為了避免一些可能出現(xiàn)的問題掉盅,請確保下載的文件的路徑中不包含空格也拜,同時,拷貝或者移動它的過程中也應(yīng)當(dāng)遵循此規(guī)則趾痘。我們后續(xù)下載的包也應(yīng)當(dāng)存放在相同的文件夾下慢哈。

出于教學(xué)的目的,我們將假設(shè)你創(chuàng)建下面的文件夾作為工作目錄

C:\develop

拷貝(或者移動)剛剛下載的編譯器包到此文件夾永票,如果你還未下載的話卵贱,請將其放到此文件夾中。現(xiàn)在你的工作目錄看起來應(yīng)該是這樣的:

C:\develop\tdm64-gcc-5.1.0-2.exe

步驟 2:下載Lua程序源代碼包

Lua的源程序包的下載界面
http://www.lua.org/download.html

以及5.3.3版本的下載鏈接分別為
http://www.lua.org/ftp/lua-5.3.3.tar.gz

點擊下載侣集,確保下載的目錄是 C:\develop
下載完成后键俱,我們的工作目錄中應(yīng)該有2個文件:

C:\develop\tdm64-gcc-5.1.0-2.exe
C:\develop\lua-5.3.3.tar.gz

步驟 3:下載適用于Lua程序源代碼包的解壓縮器(7-zip)

Lua的源文件被打包成Linux平臺下習(xí)以為常Windows中罕見的格式:TAR-GZ。就像你看到的.tar.gz這種雙擴展名的文件世分。Windows 系統(tǒng)本身無法解壓這種格式的文件编振,所以我們需要一個程序來完成解壓工作。Windows平臺下臭埋,可以處理TAR-GZ格式文件的一個非常好的免費解壓縮應(yīng)用程序是7-zip踪央。

7-zip 官網(wǎng) http://www.7-zip.org/

為了保持我們編譯過程盡量簡單,這里不會使用原始的7-zip的安裝包瓢阴,原始的安裝包在安裝完畢后畅蹂,會修改到系統(tǒng)。因此我們使用PortableApps.com提供的便攜版本荣恐。

官網(wǎng) http://portableapps.com/

便攜版本 http://portableapps.com/apps/utilities/7-zip_portable

點擊下載到我們的工作目錄液斜,它現(xiàn)在看起來應(yīng)該是這樣的:

C:\develop\tdm64-gcc-5.1.0-2.exe
C:\develop\lua-5.3.3.tar.gz
C:\develop\7-ZipPortable_16.04.paf.exe

步驟 4:安裝編譯器

現(xiàn)在打開我們C:\develop所在目錄,雙擊 tdm64-gcc-5.1.0-2.exe 進行編譯器的安裝叠穆。將出現(xiàn)一個對話框旗唁。

  1. 不勾選 選項Check for updated files on the TDM-GCC server
  1. 點擊Create
  2. 選擇 C:\develop\tmd64-gcc 作為安裝目錄
  3. 點擊Next
  4. 在復(fù)選框選擇樹中,不勾選 選項 Start Menu ItemsAdd to PATH 兩項(這個步驟不是必須的痹束,但是它使得編譯器與操作系統(tǒng)解耦了)
  5. 點擊Install并等待完成
  6. 完成后检疫,點擊Next
  7. 點擊Finish(你可以瀏覽readme文件,但對于本教程祷嘶,它不是必須的)

現(xiàn)在屎媳,我們的工作目錄看起來是這樣的:

C:\develop\tdm64-gcc-5.1.0-2.exe
C:\develop\lua-5.3.3.tar.gz
C:\develop\7-ZipPortable_16.04.paf.exe
C:\develop\tmd64-gcc

最后一項是編譯器的安裝目錄。

步驟 5:安裝解壓器

現(xiàn)在運行便攜版7-zip论巍,雙擊當(dāng)前目錄下的7-ZipPortable_16.04.paf.exe烛谊,出現(xiàn)一個對話框。
選擇英文作為語言(這不是必須的嘉汰,否則下列步驟說明中出現(xiàn)的消息將不一定匹配)丹禀。

  1. 點擊 OK
  1. 點擊Next
  2. 選擇C:\develop\7-ZipPortable 作為目標(biāo)目錄
  3. 點擊Install,等待安裝完成
  4. 點擊Finish

現(xiàn)在,我們的工作目錄看起來是這樣的:

C:\develop\tdm64-gcc-5.1.0-2.exe
C:\develop\lua-5.3.3.tar.gz
C:\develop\7-ZipPortable_16.04.paf.exe
C:\develop\tmd64-gcc
C:\develop\7-ZipPortable

最后一項是7-zip的安裝目錄双泪。

步驟 6:使用7-zip解壓Lua程序源代碼包

  1. 進入7-ZipPortable文件夾下(即C:\develop\7-ZipPortable)持搜,雙擊運行 7-ZipPortable.exe
  1. 將彈出框中的路徑更改為** C:\develop **, 回車
  2. 雙擊lua-5.3.3.tar.gz焙矛,進入包內(nèi)部葫盼,我們將看到lua-5.3.3.tar
  3. 雙擊lua-5.3.3.tar,進入內(nèi)部村斟,我們將看到lua-5.3.3文件夾
  4. lua-5.3.3上右鍵贫导,選擇Copy To...選項,將彈出一個對話框
  5. 指定路徑為** C:\develop 蟆盹,并點擊OK**
  6. 關(guān)閉當(dāng)前對話框孩灯,我們不再需要它了

現(xiàn)在,我們的工作目錄看起來是這樣的:

C:\develop\tdm64-gcc-5.1.0-2.exe
C:\develop\lua-5.3.3.tar.gz
C:\develop\7-ZipPortable_16.04.paf.exe
C:\develop\tmd64-gcc
C:\develop\7-ZipPortable
C:\develop\lua-5.3.3

最后一項是lua的資源解壓的文件夾逾滥。

步驟 7:創(chuàng)建一個Windows的shell腳本來執(zhí)行Build過程

你需要在我們的 *** C:\develop\ ***下創(chuàng)建一個名為 build.cmd 的文本文件
粘貼并拷貝以下內(nèi)容到其中:

@echo off
:: ========================
:: file build.cmd
:: ========================
setlocal
:: you may change the following variable's value
:: to suit the downloaded version
set lua_version=5.3.3

set work_dir=%~dp0
:: Removes trailing backslash
:: to enhance readability in the following steps
set work_dir=%work_dir:~0,-1%
set lua_install_dir=%work_dir%\lua
set compiler_bin_dir=%work_dir%\tmd64-gcc\bin
set lua_build_dir=%work_dir%\lua-%lua_version%
set path=%compiler_bin_dir%;%path%

cd /D %lua_build_dir%
mingw32-make PLAT=mingw

echo.
echo **** COMPILATION TERMINATED ****
echo.
echo **** BUILDING BINARY DISTRIBUTION ****
echo.

:: create a clean "binary" installation
mkdir %lua_install_dir%
mkdir %lua_install_dir%\doc
mkdir %lua_install_dir%\bin
mkdir %lua_install_dir%\include

copy %lua_build_dir%\doc\*.* %lua_install_dir%\doc\*.*
copy %lua_build_dir%\src\*.exe %lua_install_dir%\bin\*.*
copy %lua_build_dir%\src\*.dll %lua_install_dir%\bin\*.*
copy %lua_build_dir%\src\luaconf.h %lua_install_dir%\include\*.*
copy %lua_build_dir%\src\lua.h %lua_install_dir%\include\*.*
copy %lua_build_dir%\src\lualib.h %lua_install_dir%\include\*.*
copy %lua_build_dir%\src\lauxlib.h %lua_install_dir%\include\*.*
copy %lua_build_dir%\src\lua.hpp %lua_install_dir%\include\*.*

echo.
echo **** BINARY DISTRIBUTION BUILT ****
echo.

%lua_install_dir%\bin\lua.exe -e"print [[Hello!]];print[[Simple Lua test successful!!!]]"

echo.
pause

現(xiàn)在峰档,我們的工作目錄看起來是這樣的:

C:\develop\tdm64-gcc-5.1.0-2.exe
C:\develop\lua-5.3.3.tar.gz
C:\develop\7-ZipPortable_16.04.paf.exe
C:\develop\tmd64-gcc
C:\develop\7-ZipPortable
C:\develop\lua-5.3.3
C:\develop\build.cmd

現(xiàn)在雙擊執(zhí)行shell腳本build.cmd,一個黑色背景的窗口會出現(xiàn)匣距。你會看到腳本運行過程中輸出的信息。

這個過程會耗費你一些時間哎壳,取決于你電腦的配置毅待。當(dāng)腳本運行結(jié)束的時候,它會在我們的工作目錄下創(chuàng)建一個“干凈”的二進制可分發(fā)的版本归榕,結(jié)束前會打印兩條問候的信息用以測試我們生成的內(nèi)容尸红。那么現(xiàn)在你可以關(guān)閉這個黑色的窗口了。

現(xiàn)在刹泄,我們的工作目錄變成:

C:\develop\tdm64-gcc-5.1.0-2.exe
C:\develop\lua-5.3.3.tar.gz
C:\develop\7-ZipPortable_16.04.paf.exe
C:\develop\tmd64-gcc
C:\develop\7-ZipPortable
C:\develop\lua-5.3.3
C:\develop\build.cmd
C:\develop\lua

步驟 8:拷貝Lua的安裝文件到合適的位置

現(xiàn)在 C:\develop\lua 中包含了運行一個lua腳本所需要的所有東西外里。只要你愿意,你可以很方便的將這個目錄拷貝到任何地方(甚至是你的USB中)特石。其內(nèi)部的文件目錄應(yīng)該是這樣的:

lua-----+--bin
        |
        +--doc
        |
        +--include

bin文件夾中盅蝗,你可以看到 lua.exe,它是lua解釋器姆蘸。在doc文件夾中墩莫,你可以看到lua的相關(guān)手冊。

步驟 9:配置系統(tǒng)環(huán)境變量以運行Lua文件

如果你想在命令行窗口中通過輸入

lua myscript.lua

來運行一個腳本逞敷,那么你需要在Windows的系統(tǒng)環(huán)境變量path中加入C:\develop\lua\bin狂秦。


結(jié)束

當(dāng)你將lua文件夾拷貝到你想要的某個文件夾下后,你可以將C:\develop中的內(nèi)容全部刪除(記得清理一下環(huán)境變量path)推捐。

然而裂问,刪除之前你還可以打撈一些有用的東西:

  • 可以將 lua-5.3.3.tar.gz,tdm64-gcc-5.1.0-2.exe,7-ZipPortable_16.04.paf.exe 保存起來堪簿,以備不時之需
  • tmd64-gcc 可以拷貝或者移動到任何你希望的地方痊乾,在*** tmd64-gcc\bin *** 中的工具可以在命令行窗口中被直接使用(如果你將它的路徑添加到系統(tǒng)搜索路徑的話)
  • 7-ZipPortable 同樣是可以任意移動的,因此可以將其放入你的移動硬盤中
  • 如果你好奇Lua源代碼中的內(nèi)容戴甩,你可以一探究竟符喝,當(dāng)然為了更好的理解它們,你要成為一名C程序員甜孤。

這是一篇新手教程协饲,所謂新手教程,我的看法是:文章應(yīng)當(dāng)具有嚴(yán)謹(jǐn)?shù)臄⑹鼋Y(jié)構(gòu)缴川,由淺入深茉稠,除了告訴你如何做How),還希望告訴你為什么Why)把夸,感謝你我都曾付出的寶貴時間而线!

歡迎前往個人博客 駑馬點滴 和視頻空間 嗶哩嗶哩-《挨踢日志》

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市恋日,隨后出現(xiàn)的幾起案子膀篮,更是在濱河造成了極大的恐慌,老刑警劉巖岂膳,帶你破解...
    沈念sama閱讀 218,546評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件誓竿,死亡現(xiàn)場離奇詭異,居然都是意外死亡谈截,警方通過查閱死者的電腦和手機筷屡,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,224評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來簸喂,“玉大人毙死,你說我怎么就攤上這事∮黯” “怎么了扼倘?”我有些...
    開封第一講書人閱讀 164,911評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長除呵。 經(jīng)常有香客問我唉锌,道長,這世上最難降的妖魔是什么竿奏? 我笑而不...
    開封第一講書人閱讀 58,737評論 1 294
  • 正文 為了忘掉前任袄简,我火速辦了婚禮,結(jié)果婚禮上泛啸,老公的妹妹穿的比我還像新娘绿语。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,753評論 6 392
  • 文/花漫 我一把揭開白布吕粹。 她就那樣靜靜地躺著种柑,像睡著了一般。 火紅的嫁衣襯著肌膚如雪匹耕。 梳的紋絲不亂的頭發(fā)上聚请,一...
    開封第一講書人閱讀 51,598評論 1 305
  • 那天,我揣著相機與錄音稳其,去河邊找鬼驶赏。 笑死,一個胖子當(dāng)著我的面吹牛既鞠,可吹牛的內(nèi)容都是我干的煤傍。 我是一名探鬼主播,決...
    沈念sama閱讀 40,338評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼嘱蛋,長吁一口氣:“原來是場噩夢啊……” “哼蚯姆!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起洒敏,我...
    開封第一講書人閱讀 39,249評論 0 276
  • 序言:老撾萬榮一對情侶失蹤龄恋,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后凶伙,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體郭毕,經(jīng)...
    沈念sama閱讀 45,696評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,888評論 3 336
  • 正文 我和宋清朗相戀三年镊靴,在試婚紗的時候發(fā)現(xiàn)自己被綠了铣卡。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片链韭。...
    茶點故事閱讀 40,013評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡偏竟,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出敞峭,到底是詐尸還是另有隱情踊谋,我是刑警寧澤,帶...
    沈念sama閱讀 35,731評論 5 346
  • 正文 年R本政府宣布旋讹,位于F島的核電站殖蚕,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏沉迹。R本人自食惡果不足惜睦疫,卻給世界環(huán)境...
    茶點故事閱讀 41,348評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望鞭呕。 院中可真熱鬧蛤育,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,929評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至咕娄,卻和暖如春亥揖,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背圣勒。 一陣腳步聲響...
    開封第一講書人閱讀 33,048評論 1 270
  • 我被黑心中介騙來泰國打工费变, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人灾而。 一個月前我還...
    沈念sama閱讀 48,203評論 3 370
  • 正文 我出身青樓胡控,卻偏偏與公主長得像,于是被迫代替她去往敵國和親旁趟。 傳聞我的和親對象是個殘疾皇子昼激,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,960評論 2 355

推薦閱讀更多精彩內(nèi)容