歡迎前往個人博客 駑馬點滴 和視頻空間 嗶哩嗶哩-《挨踢日志》
下載
這個過程最終將生成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提供的便攜版本荣恐。
點擊下載到我們的工作目錄液斜,它現(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)一個對話框旗唁。
- 不勾選 選項Check for updated files on the TDM-GCC server
- 點擊Create
- 選擇
C:\develop\tmd64-gcc
作為安裝目錄 - 點擊Next
- 在復(fù)選框選擇樹中,不勾選 選項 Start Menu Items 和Add to PATH 兩項(這個步驟不是必須的痹束,但是它使得編譯器與操作系統(tǒng)解耦了)
- 點擊Install并等待完成
- 完成后检疫,點擊Next
- 點擊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)的消息將不一定匹配)丹禀。
- 點擊 OK
- 點擊Next
- 選擇
C:\develop\7-ZipPortable
作為目標(biāo)目錄 - 點擊Install,等待安裝完成
- 點擊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程序源代碼包
- 進入7-ZipPortable文件夾下(即
C:\develop\7-ZipPortable
)持搜,雙擊運行 7-ZipPortable.exe
- 將彈出框中的路徑更改為** C:\develop **, 回車
- 雙擊lua-5.3.3.tar.gz焙矛,進入包內(nèi)部葫盼,我們將看到lua-5.3.3.tar
- 雙擊lua-5.3.3.tar,進入內(nèi)部村斟,我們將看到lua-5.3.3文件夾
- 在lua-5.3.3上右鍵贫导,選擇Copy To...選項,將彈出一個對話框
- 指定路徑為** C:\develop 蟆盹,并點擊OK**
- 關(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)把夸,感謝你我都曾付出的寶貴時間而线!
歡迎前往個人博客 駑馬點滴 和視頻空間 嗶哩嗶哩-《挨踢日志》