Lua环境安装

  • Linux 系统上安装 -- linux上安装lua相对来说比较简单。只需要下载源码包并在终端解压即可。
    当前lua最新版本为5.3.4,可在lua.org官网中下载最新源码包

``` curl -R -O http://www.lua.org/ftp/lua-5.3.4.tar.gz tar -zxf lua-5.3.4 cd lua-5.3.4 make linux test make install ``` Ps: 如果安装时报错,多半是没有安装依赖包,安装即可 ``` yum install readline-devel ``` 安装完成之后输入lua -v 显示正确版本即安装成功

Centos7 默认安装了lua 如果需要升级到最新版本 按照如上步骤,最后替换掉原来的lua报错位置即可

查看lua和luac的位置:which lua luac /usr/bin/lua /usr/bin/luac 按照上面步骤编译完成后,将/usr/bin中的lua和luac删除,然后将/usr/local/bin中的lua和luac创建一个ln到/usr/bin中即可

cd /usr/bin
rm -rf lua luac
ln -s /usr/local/bin/lua /usr/bin/lua
ln -s /usr/local/bin/luac /usr/bin/luac

此时输入lua -v 发现版本已经是最新版本了

  • Windows 系统上安装 --
    • Window下可以使用"SciTE"的IDE环境执行Lua程序
    • 还可以再lua官网下载Binaries-LuaDist-batteries,解压即可使用
    • 还可以下载源码包,通过vs编译使用。
      Windows下介绍一下如何通过vs编译得到lua的库文件、解释器和编辑器

    vs2013+sublime text3 配置lua运行环境

    一 . Lua源码 VS 2013 编译

    1 . 生成库文件 Lua5.3.4.lib

    • 首先下载lua最新的安装包,并解压到某个目录
    • 打开vs2013,创建一个 C++ 的 Win32 控制台应用程序:
      步骤如下:【文件】—>【新建】—>【项目…】—>【 Visual C++】—> 【Win32 控制台应用程序】,取名为 Lua5.3.4。 在应用程序设置中勾选应用类型为 【静态库】 , 附加选项中去掉 【预编译头】 的勾选,点击 【完成】。 新建完毕后得到如下目录结构:
      Lua5.3.4
      |-- 引用
      |-- 外部依赖项
      |-- 头文件
      |-- 源文件
      |-- 资源文件
      |-- ReadMe.txt
      ```
      
    * 源码引入:<br>
      * 创建源码目录: <br>
      在当前项目根目录下创建一个文件夹,取名为 `LuaSrc `
      ,然后将上面 `lua-5.3.4` 源码包解压目录下 `/src`目录中的
      所有文件都复制到此目录中。
      * 头文件引入:<br>
      【头文件】右键 —> 【添加】—>【现有项…】,
      选择 `LuaSrc` 目录,从该目录中选中所有 `.h `后缀的文件,
      点击 【添加】将源码头文件都添加进来;
      * 源文件引入:<br>
      【源文件】右键 —> 【添加】—>【现有项…】,
      选择 `LuaSrc` 目录,从该目录中选中所有 `.c` 后缀的文件
      (注:这里需要剔除 `lua.c` 和 `luac.c` ,这两个源文件不引进来),
      点击 【添加】将源码源文件都添加进来。
    * 配置属性:
      * 编译附加目录:<br>
       【Lua5.3.4】右键—>【属性】—>【C/C++】—>【常规】—>【附加包含目录】,
       填写 `LuaSrc` 目录的路径,然后点击 【应用】让设置生效;
      * 编译目标:<br>
        切换到 【C/C++】—>【高级】,选中 【编译为】,
        切换其参数为 【编译为 C 代码 (/TC)】,点后点击 【应用】让设置生效;
      * 最后点击 【确定】 关闭配置属性界面。
    * 编译库:<br>
      设置菜单栏中选择编译目标版本为 【Release】,
      然后点击【本地 Windows 调试器】按钮进行编译,
      输出栏输出如下内容表示编译成功:
      ```
      1>------ 已启动生成: 项目: Lua5.3.4, 配置: Release Win32 ------
      1>  Lua5.3.4.vcxproj -> E:\Skynet\Tools\Lua5.3.4\Release\Lua5.3.4.lib
      ========== 生成: 成功 1 个,失败 0 个,最新 0 个,跳过 0 个 ==========
      ```
      <br>
    >
    > > 2 . 生成解释器 Lua.exe:
    * 创建一个 C++ 的 Win32 控制台应用程序:<br>
    参考上面的步骤,创建一个 C++ 的 Win32 控制台应用程序,
    只是在应用程序设置步骤中不在选择 【静态库】而是选择【控制台应用程序】,
    选勾选为【空项目】,而且不用去掉【预编译头】的勾选,项目取名为 `Lua` 。
    * 源码引入:<br>
    步骤与上述基本一致,只是引入源文件的时候,只剔除 `luac.c` ,
    把 `lua.c `和其他 `*.c` 文件都引入到源文件中。
    * 编译解释器:<br>
    直接设置菜单栏中选择编译目标版本为 【Release】,
    然后点击【本地 Windows 调试器】按钮进行编译,
    假如直接弹出一个命令行窗口,并且窗口内输出:
      ```
      Lua 5.3.4 Copyright (C) 1994-2017 Lua.org, PUC-Rio
      />
      ```
      可以直接输入一个 Lua 打印语句,Enter 即可输出执行结果,
      这就表示解释器生成成功,可以在项目根目录下的 Release 目录下
      找到一个 Lua.exe 文件,双击即可运行,
      并且可以直接在弹出窗口进行 lua 语句的运行,
      这就是上面说到的三个目标对象中的第二个,即 lua 的解释器。
    

> > 3 . 生成编译器 Luac.exe:<br>
* 步骤与上一步生成 lua 的解释器基本相同,唯一的区别在于`源码引入`步骤,
只剔除 `lua.c`,把 `luac.c` 和其他 `*.c` 文件都引入到源文件中。
然后运行项目,在 Release 目录下可以得到一个 `luac.exe` ,
这是上面说到的三个目标对象中的第三个,即 lua 的编译器。<br><br><br>
> > 至此,我们就完成了 lua 最主要的三个工具的生成操作,后面我们要开始正式地解读 lua 的源码。
>---
>  ### 二 . sublime 配置lua编译环境
>> 将上一步中的
```
Lua.exe
Lua5.3.4.lib
Luac.exe
```
三个文件拷贝到某一个目录中,在环境变量中加入该目录即可。
cmd 以管理员权限运行,输入`lua -v`,如果输出lua正确版本,即配置完成