WIndows 使用VS编译 Lua5

时间:2024-11-11 00:06:14

从Lua5.1开始官方给出的文件只有源代码和makefile文件了,官网给出的bulid方式也是在linux平台,如果只是想找个库使用下可以到这里来下载:http://joedf.ahkscript.org/LuaBuilds/ ,如果需要自定修改库配置的话,就需要自己编译。这里主要参考文章在Windows下使用Visual Studio编译Lua5.3中的方式利用VS编译lua库文件,不过你也可以参考 windows下编译lua几种方法这里所述的几种方式。

链接库编译

  • 使用Visual Studio创建一个VC++项目,项目命名为Lua53,项目类型为静态库、不设置预编译头。
  • 删除Visual Studio自动创建的.cpp文件及其对应的.h文件。
  • 将下载的Lua代码解压,将src目录下的全部文件拷贝到项目中,然后删除lua.c、luac.c和lua.hpp这三个文件。
  • 编译项目会得到一个Lua53.lib的文件,这就是我们编译得到的Lua链接库。

Lua解释器

Lua解释器是一个可以直接运行Lua代码的可执行文件,因此

  • 在同一个解决方案下继续创建VC++项目,项目命名为Lua,项目类型为控制台应用程序、需设置预编译头。
  • 删除Visual Studio自动创建的.cpp文件及其对应的.h文件。
  • 将下载的Lua代码解压,将src目录下的全部文件拷贝到项目中,然后删除luac.c这个文件。
  • 设置当前项目依赖于Lua53项目
  • 编译项目会得到一个Lua.exe文件,这就是我们编译得到的Lua解释器。

Lua编译器

  • 在同一个解决方案下继续创建VC++项目,项目命名为Lua,项目类型为控制台应用程序、需设置预编译头。
  • 删除Visual Studio自动创建的.cpp文件及其对应的.h文件。
  • 将下载的Lua代码解压,将src目录下的全部文件拷贝到项目中,然后删除lua.c这个文件。
  • 设置当前项目依赖于Lua53项目
  • 编译项目会得到一个Luac.exe文件,这就是我们编译得到的Lua解释器。
    WIndows 使用VS编译 Lua5

遇到的问题

  • Main 函数找不到: 可能是项目类型不是控制台程序引起,项目属性-->连接器-->系统中设置
  • stdafx.h 找不到: 属性-->C/C++-->预编译头 取消预编译头

参考

Lua lib dowlaod
官网bulid方式

工程下载链接:http://pan.baidu.com/s/1skQUJmP ,包含lpeg、struct库