注:以下是基于 别人的教程或笔记来操作并按照自己的操作记录的纯文字版编译和hello lua过程。

原图文版链接: 原文链接

1.创建空的解决方案:
文件->新建->项目->其他项目类型->Visual Studio解决方案->空白解决方案
名称:lua53
位置:..
接下来在这个解决方案中创建3个项目:分别为Luz_lib、Lua和Luac
Lua和Luac项目中会生成最终我们需要的执行文件。Lua_lib会生成静态库文件,
Lua和Luac项目的编译需要这个库文件。所以我们需要先编译Lua_lib项目,生成需要的库文件。

2.创建lib静态库:
a.在lua53解决方案上点击右键->添加->新建项目->Visual C++ ->空项目
名称:Lua_lib
位置:...
b.在Lua_lib项目上点击右键->添加->现有项(或已存在项),
打开lua解压目录,找到src文件夹,选中全部文件,然后排除lua.c和
luac.c两个文件,将其他文件全部添加到项目中区。
(PS:Lua_lib项目中生成我们需要的库文件,而lua.c和luac.c分别是Lua项目
和Luac项目中要用到的。
c.编译Lua_lib项目,首先需要修改项目配置,在Lua_lib项目上点击右键->属性->配置属性->常规
->配置类型 选择静态库(.lib) ,然后再选中项目,点击主菜单栏中的测试->调试->所有测试 运行完之后在
解决方案文件夹下会多出一个Debug文件夹,里面会有一个Lua_lib.lib文件,这个就是Lua和Luac所需要的库文件。

3. 继续创建剩下的项目:Lua 、Luac
a.同创建lib项目一样,通过在lua53解决方案上点击右键来新建新的空项目Lua和Luac
b.把lua.c添加到Lua项目,Luac.c添加到Luac项目。
c.接下来对Lua和Luac项目执行相同操作,映入编译需要的Lua_lib.lib库文件:
右键Lua项目 -> 属性 -> 配置属性 -> 链接器 -> 输入 ->附加依赖项 选中值区域,点击下拉 -> 编辑 ->
输入Lua_lib.lib 确定。再在这个弹出窗口中 选择链接器-> 常规 -> 附加库目录 -> 下拉,编辑 -> 点击 文件夹按钮
-> 将Lua_lib.lib 库文件的目录添加进去,然后确定。(例如:D:\visual studio 2013\Projects\lua53\Debug)

4. 生成可执行文件:
编译解决方案(主菜单-测试-调试-所有测试)。成功之后在解决方案的debug目录下生成的Lua.exe和Luac.exe这两个
可执行文件就是我们需要的文件。

5.测试编译好的文件:
打开控制台将目录切换到lua53解决方案的debug文件夹下,在控制台上输入Lua.exe就能进入lua处理程序,进入时会
显示当前版本信息等。
然后输入print("hello lua"),回车,如果看到打印的 hello lua。即成功。
还可以在当前目录下新建一个测试脚本(.lua文件)。在该文件中输入 print("hello lua"); 保存。
然后在控制台出入Lua.exe Test.lua 应该可以看到 hello lua 输出。
Luac.exe类似一个编译器,会将.lua文件处理为.out的二进制文件。然后可以用Lua.exe执行它。
当在控制台输入Luac.exe Test.lua时会在当前目录下生成luac.out文件,然后执行Lua.exe luac.out会看到同样的
hello lua 输出。

在visual studio 2013中编译Lua5.3.1的更多相关文章

  1. 在Visual Studio 2013中编译libssh2项目

     一. 下载需要的外部包,并解压,下面给出的链接如果无法访问,就google搜索下载一下: •下载openssl •下载zlib 二.修改libssh2项目配置: 1.C/C++->Gene ...

  2. 如何在Visual Studio 2013中使用Ribbon For WPF

    1.首先需要 下载Ribbon For WPF.目前最新的版本是Microsoft Ribbon for WPF October 2010. 下载 链接: https://www.microsoft. ...

  3. 在 Visual Studio 2013 中创建 ASP.NET Web 项目(0):专题导航 [持续更新中]

    写在前面的话 随着 Visual Studio 2013 的正式推出,ASP.NET 和 Visual Studio Web 开发工具 也发布了各自的最新版本. 新版本在构建 One ASP.NET ...

  4. 在 Visual Studio 2013 中创建 ASP.NET Web 项目(1):概述 - 创建 Web 应用程序项目

    注:本文是“在 Visual Studio 2013 中创建 ASP.NET Web 项目”专题的一部分,详情参见 专题导航 . 预备知识 本专题适用于 Visual Studio 2013 及以上版 ...

  5. 在 Visual Studio 2013 中使用 Grunt, Bower 和 NPM

    在 Visual Studio 2015 中提供了对于 Grunt 和 Gulp 的内置支持,在 Visual Studio 2013 中怎么办呢?微软将 2015 中的特性作为几个独立的扩展发布出来 ...

  6. 转载:在Visual Studio 2013中管理中国特色的社会主义Windows Azure

    原文链接: http://www.pstips.net/get-azurechinacloud-settings.html 谷歌被豪迈地放弃了中国市场,微软仍旧在中国市场摸爬滚打,跪着挣钱.其中私人定 ...

  7. 在ASP.NET MVC5 及 Visual Studio 2013 中为Identity账户系统配置数据库链接及Code-First数据库迁移

    在ASP.NET MVC5 及 Visual Studio 2013 中为Identity账户系统配置数据库链接及Code-First数据库迁移 最近发布的ASP.NET MVC 5 及Visual ...

  8. 在Visual Studio 2013 中使用C++单元测试

    本文主要介绍在Visual Studio 2013中对代码进行单元测试的方法,包含了两方面的内容:对已有的Dll文件进行单元测试,以及对已有的源文件进行单元测试. 1. VS2013对DLL文件的单元 ...

  9. 在Visual Studio 2013中修改远程Git服务器的地址

    在Visual Studio 2013中克隆了远程Git服务器的代码后,可以通过下图的方式修改Git服务器的地址:

随机推荐

  1. System.Threading.Timer如何正确地被Dispose

    System.Threading.Timer是.NET中一个定时触发事件处理方法的类(本文后面简称Timer),它背后依靠的是.NET的线程池(ThreadPool),所以当Timer在短时间内触发了 ...

  2. Nowcoder217D msc的背包 背包、生成函数、组合

    传送门 发现这是一个背包问题,而\(k\)又很大,考虑生成函数方式解决这个问题. 对于体积为\(1\)的物品的生成函数为\(\frac{1}{1 - x}\),体积为\(2\)的物品的生成函数为\(\ ...

  3. cmdb部署

    参考资料:https://github.com/guohongze/adminset 基础安装说明:1.基本要求:centos 7.2(1511) django 1.9.8(兼容Django1.11) ...

  4. Java面试准备之数据库

    一.考察点 1.联结 1.1 联结的概念: 简单的说,联结是一种机制,用来在一条SELECT语句中关联表,因此称之为联结. 1.2 联结的分类 注意:联结并不代表只有使用join关键字的才算是联结,w ...

  5. hbase集群搭建参考资料

    hadoop分布式集群搭建 http://www.ityouknow.com/hadoop/2017/07/24/hadoop-cluster-setup.html hbase分布式集群搭建: htt ...

  6. [第二届构建之法论坛] 预培训文档(Java版)

    本博客是第二届构建之法论坛暨软件工程培训活动预培训文档中[适用于结对编程部分的Java版本],需要实验者有一部分Java基础. 目录 Part0.背景 Part1.配置环境 配置JDK Linux 平 ...

  7. php面向对象之构造函数作用与方法

    什么是构造函数呢?构造函数又有什么作用呢? 构造函数 ,是一种特殊的方法.主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中.特别的一个类可以有多个 ...

  8. Unit 6.标准文档流,浮动,清除浮动以及margin塌陷问题

    一. 什么是标准文档流 文本流其实就是文档的读取和输出顺序,也就是我们通常看到的由左到右.由上而下的读取和输出形式,在网页中每个元素都是按照这个顺序进行排序和显示的,而float和position两个 ...

  9. 内存管理中提到的hot cold page

    所谓冷热是针对处理器cache来说的,冷就是页不大可能在cache中,热就是有很大几率在cache中. cold page和hot page的概念可以参考LWN的一片文章http://lwn.net/ ...

  10. Python——Set集合

    一.定义 Set集合用于表示相互之间无需的一种组合对象,包括:并集.交集.补集 二.集合的两种模式 sample = set()  初始化普通集合 sample = frozenset() 初始化不可 ...