Visual Studio 2017编译Lua 5.3.5

Visual Studio编译Lua

    • 下载地址
    • 创建项目
    • 静态库
    • 动态库
    • 解释器
      • 源码版
      • 静态链接版
      • 动态链接版
    • 编译器
      • 源码版
      • 静态链接版
      • 动态链接版

下载地址

官方网站:http://www.lua.org/ftp/

创建项目

打开Visual Studio,在主界面点击菜单栏的文件,先选中下拉菜单的新建,再点击子菜单的项目。如下图所示:
Visual Studio 2017编译Lua 5.3.5_第1张图片
弹出新建项目窗口,窗口左边是目录树,依次展开已安装、Visual C++,点击Windows桌面,之后在右边选择Windows桌面向导,在下边的名称输入框之中为项目取名为lua,点击位置输入框右边的浏览,弹出项目位置窗口,选择项目存放位置,最后点击确定。如下图所示:
Visual Studio 2017编译Lua 5.3.5_第2张图片
出现Windows桌面项目的向导窗口,应用程序类型默认为控制台应用程序,在其他选项中勾选空项目,之后点击确定。如下图所示:
Visual Studio 2017编译Lua 5.3.5_第3张图片
自动创建项目之后回到主界面,在工具栏之上,版本配置为Release,平台选择x64,可自行选择版本和平台。如下图所示:
项目版本
在解决方案资源管理器右击项目名lua,弹出右键菜单,选择在文件资源管理器中打开文件夹,即工作目录。如以下两图所示:
Visual Studio 2017编译Lua 5.3.5_第4张图片
Visual Studio 2017编译Lua 5.3.5_第5张图片
解压lua源码压缩包,打开lua源码根目录的src文件夹,复制除Makefile之外的所有文件至工作目录。如以下两图所示:
Visual Studio 2017编译Lua 5.3.5_第6张图片
Visual Studio 2017编译Lua 5.3.5_第7张图片

静态库

切换至Visual Studio主界面,在解决方案资源管理器右击项目名lua,弹出右键菜单,先选中右键菜单的添加,再点击子菜单的现有项。如下图所示:
Visual Studio 2017编译Lua 5.3.5_第8张图片
弹出添加现有项窗口,选择除lua.hpp、lua.c和luac.c之外的源码文件,之后点击添加。如下图所示:
Visual Studio 2017编译Lua 5.3.5_第9张图片
在解决方案资源管理器右击项目名lua,弹出右键菜单,选择属性。如下图所示:
Visual Studio 2017编译Lua 5.3.5_第10张图片
出现项目属性页,左边展开配置属性,选中常规,右边先展开常规,修改目标文件扩展名为.lib,再展开项目默认值,配置类型选择静态库(.lib),最后点击确定。如下图所示:
Visual Studio 2017编译Lua 5.3.5_第11张图片
在主界面点击菜单栏的生成,弹出下拉菜单,选择生成解决方案。如下图所示:
Visual Studio 2017编译Lua 5.3.5_第12张图片
输出窗口有生成过程,提示生成成功。如下图所示:
Visual Studio 2017编译Lua 5.3.5_第13张图片
生成的静态库lua.lib位于默认输出目录。如下图所示:
Visual Studio 2017编译Lua 5.3.5_第14张图片

动态库

编译动态库和静态库的步骤相似,只是项目配置不同,再次打开项目属性页,左边展开配置属性,选中其下的常规,右边修改目标文件扩展名为.dll,修改配置类型为动态库(.dll)。如下图所示:
Visual Studio 2017编译Lua 5.3.5_第15张图片
展开项目属性页左边的C/C++,选中预处理器,在右边的预处理器定义输入框之中添加LUA_BUILD_AS_DLL,以英文分号间隔,之后点击确定。如下图所示:
Visual Studio 2017编译Lua 5.3.5_第16张图片
点击菜单栏的生成,选择生成解决方案,输出窗口提示生成成功。如下图所示:
Visual Studio 2017编译Lua 5.3.5_第17张图片
生成的链接库lua.lib和动态库lua.dll位于默认输出目录。如下图所示:
Visual Studio 2017编译Lua 5.3.5_第18张图片

解释器

源码版

解释器相比动静态库,编译的源文件多出lua.c。可以选择重新创建项目编译解释器,或者基于编译动态库的项目编译解释器。

此处基于编译动态库的项目直接编译解释器,首先按照编译静态库的第一步,向项目添加现有项,即源文件lua.c。

然后还原项目属性,打开项目属性页,左边展开配置属性,选中其下的常规,右边修改目标文件扩展名为.exe,修改配置类型为应用程序(.exe)。如下图所示:
Visual Studio 2017编译Lua 5.3.5_第19张图片
展开项目属性页左边的C/C++,选中预处理器,在右边的预处理器定义输入框之中删除LUA_BUILD_AS_DLL,之后点击确定。如下图所示:
Visual Studio 2017编译Lua 5.3.5_第20张图片
点击菜单栏的生成,选择生成解决方案,输出窗口提示生成成功。如下图所示:
Visual Studio 2017编译Lua 5.3.5_第21张图片
生成的解释器lua.exe位于默认输出目录。如下图所示:
Visual Studio 2017编译Lua 5.3.5_第22张图片

静态链接版

待续…

动态链接版

待续…

编译器

源码版

编译器相比解释器,在编译的源文件之中,需要替换lua.c为luac.c,当然可以重新创建项目编译,或者基于编译解释器的项目编译。

此处基于编译解释器的项目直接编译,首先按照编译静态库的第一步,向项目添加现有项,即源文件luac.c。

然后操作解决方案资源管理器的目录树,依次展开项目lua、源文件,在其中寻找lua.c并右击之,弹出右键菜单,选择移除。如下图所示:
Visual Studio 2017编译Lua 5.3.5_第23张图片
弹出确认窗口,点击移除。如下图所示:
Visual Studio 2017编译Lua 5.3.5_第24张图片
打开项目属性页,左边展开配置属性,选中常规,右边修改目标文件名为luac,之后点击确定。如下图所示:
Visual Studio 2017编译Lua 5.3.5_第25张图片
点击菜单栏的生成,选择生成解决方案,输出窗口提示生成成功。如下图所示:
Visual Studio 2017编译Lua 5.3.5_第26张图片
生成的编译器luac.exe位于默认输出目录。如下图所示:
Visual Studio 2017编译Lua 5.3.5_第27张图片

静态链接版

待续…

动态链接版

待续…

你可能感兴趣的:(lua,C/C++,Microsoft,Visual,Studio)