注:以下是基于 别人的教程或笔记来操作并按照自己的操作记录的纯文字版编译和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 输出。

最新文章

  1. 【字符编码】Java字符编码详细解答及问题探讨
  2. Have Fun with Numbers及循环链表(约瑟夫问题)
  3. Codeforces #380 div2 D(729D) Sea Battle
  4. KDE、GNOME 和 XFCE 桌面比较
  5. 第一章 第一个spring boot程序(转载)
  6. Linux下使用RecordMyDesktop进行屏幕录像
  7. tcp_tw_recycle和tcp_timestamps的文章汇总
  8. eclipse打开文件目录
  9. Struts2 校验
  10. 关于windows系统影子账户的问题
  11. ZooKeeper数据结构
  12. 二、Item Pipeline和Spider-----基于scrapy取校花网的信息
  13. Linux安装Tomcat-Nginx-FastDFS-Redis-Solr-集群——【第五集之补充-使用桥接模式实现虚拟机作为服务器,让同网段的其他主机远程连接】
  14. POJ 2299树状数组求逆序对
  15. AJAX-DOM事件
  16. ASP.NET Forms身份验证概述
  17. 微服务深入浅出(5)-- 声明式调用Feign
  18. 转:Windows中的命令行提示符里的Start命令执行路径包含空格时的问题
  19. scala (2) while 和变量
  20. Hibernate连接MySQL

热门文章

  1. 6-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案升级篇-优化升级(安装Apache (Web服务器)软件,测试HTTP)
  2. DSP到底是个什么鬼?看完你就懂了
  3. 对List集合嵌套了map集合对double值进行排序
  4. 一、Mysql安装
  5. Python——Django-form表单提交
  6. MySQL 中触发器的应用
  7. Vue组件以及组件之间的通信
  8. Django练习——图书管理系统
  9. pyspider框架学习
  10. java 日期格式化