Windows10下使用VS2019搭建Lua开发环境

  • 一、下载并编译Lua源码
  • 1、下载Lua源码
  • 2、使用Visual Studio 2019编译Lua源码
  • 二、使用Lua库


一、下载并编译Lua源码

1、下载Lua源码

首先进入lua官网https://www.lua.org/,下载最新版本的lua源码。

lua语言打开txt文件 lua文件用什么打开_visual studio


点击下载图标即可下载。

lua语言打开txt文件 lua文件用什么打开_lua语言打开txt文件_02


下载压缩包后进行解压,我这里是解压到D盘。

lua语言打开txt文件 lua文件用什么打开_lua语言打开txt文件_03

2、使用Visual Studio 2019编译Lua源码

启动VS2019,创建新项目,选择“Windows桌面向导”,点击“下一步”。

lua语言打开txt文件 lua文件用什么打开_c++_04


设置项目名称,这里我设置的名称是“lua-5.4.1”,点击“创建”。

lua语言打开txt文件 lua文件用什么打开_visual studio_05


此时会弹出一个对话框,下拉应用程序类型选择“静态库”,选择“空项目”,点击“确认”,等待项目创建完毕。

lua语言打开txt文件 lua文件用什么打开_visual studio_06


创建好项目后,在【头文件】选项上点击鼠标右键,选择【添加】—>【现有项】,然后找到刚刚解压Lua压缩包的目录,选择Lua目录下的src文件夹,这里我的是D:\lua-5.4.1\src目录。然后把src下的所有.h文件添加到头文件。

lua语言打开txt文件 lua文件用什么打开_lua_07


同上操作,在【源文件】选项上点击鼠标右键,以此选择【添加】—>【现有项】,找到Lua目录。把src下除去“lua.c”和“luac.c”后的所有.c文件都添加到源文件。

注意: 需要注意的是 lua.c 和luac.c 不能拷贝进去,这两个文件不能编译。

lua语言打开txt文件 lua文件用什么打开_c++_08


导入头文件和源文件之后,右键【项目】—>【属性】,在界面中操作,【C/C++】—> 【高级】—> 【编译为】选择【编译为C代码(/TC)】,最后确定。

lua语言打开txt文件 lua文件用什么打开_visual studio_09


把Debug替换成Release。

lua语言打开txt文件 lua文件用什么打开_c++_10


生成静态库。

lua语言打开txt文件 lua文件用什么打开_visual studio_11


显示生成成功。

lua语言打开txt文件 lua文件用什么打开_Lua_12


打开项目目录–找到release文件夹–找到lua5.3.lib(你自定义项目名称)。

lua语言打开txt文件 lua文件用什么打开_Lua_13


到此为止,lua5.4.1就编译好了,为方便以后引用,可以把它拷贝到Lua解压目录下,如下图所示。

lua语言打开txt文件 lua文件用什么打开_visual studio_14

二、使用Lua库

上面我们已经编译好了Lua5.4.1的库文件,下面进行测试lua库是否可以使用。

创建一个控制台应用

lua语言打开txt文件 lua文件用什么打开_lua语言打开txt文件_15


右键单击项目–选择属性。

选择C/C+±-常规–附加包含目录–选择lua源码目录的src文件夹。

lua语言打开txt文件 lua文件用什么打开_c++_16


选择链接器–常规–附加库目录–选择Lua库文件目录,这个目录为我们下载Lua源码后解压的那个目录。也就是我们的Lua5.4.1的源码目录,D:\lua-5.4.1。如下图所示。

lua语言打开txt文件 lua文件用什么打开_visual studio_17


选择链接器–输入–附加依赖项–输入我们所编译的lua5.4.1.lib库文件名称(刚才生成后拷贝到Lua源码目录下的静态链接库)。然后点击应用,确定就好了。

lua语言打开txt文件 lua文件用什么打开_lua语言打开txt文件_18


到此Lua开发环境就配置好了,下面测试搭建的Lua环境。在源代码里创建一个main.lua的文件,如图所示。

lua语言打开txt文件 lua文件用什么打开_lua_19


创建好后,在里面输入打印代码:

print("Hello Lua")

如图所示。

lua语言打开txt文件 lua文件用什么打开_lua语言打开txt文件_20


然后在LuaDemo.cpp主函数(创建项目后自带的主函数,项目名称.cpp)里面,编写测试代码并运行:

#include<iostream>
#include<lua.hpp>
using namespace std;
int main() {
	lua_State* lua = luaL_newstate();
	luaL_openlibs(lua);
	luaL_dofile(lua,"main.lua");
	lua_close(lua);
	return 0;
}

如图所示。

lua语言打开txt文件 lua文件用什么打开_lua_21


到此,完整的Lua环境就搭建好了。