QT环境下的Lua库编译及运行环境配置
2017-07-13 08:46
441 查看
1.下载Lua。目前的最新版本为5.3.4
https://www.lua.org/ftp/lua-5.3.4.tar.gz
2.在QT下编译Lua的库
我用的QT环境是qt-opensource-windows-x86-mingw530-5.8.0。
(1)在QT中建立库文件工程lua。
(2)将lua源代码解压到工程目录下,将除了luac.c、lua.c的所有c文件加进工程。
(3)在luaconf.h开始加上#define LUA_BUILD_AS_DLL
(4)选择Release版本编译即可
3.建立testLua测试工程,类型为“Qt Console Application”。
(1)将编译得到的库文件liblua.a拷贝到工程目录下。在工程文件*.pro中添加
LIBS+=-L../testlua-llua
将liblua.dll拷贝到运行目录下。
(2)将lua.h、lualib.h、luaxlib.h三个文件拷贝到工程目录下,并加入到工程中。也可以在*.pro文件中直接用“-I”指定头文件目录。
(3)在main.cpp中加入以下代码:
extern "C" {
#include "lua.h"
#include "lualib.h"
#include "lauxlib.h"
#include "tolua++.h"
}
(4)在main函数中添加以下代码:
lua_State *lu = luaL_newstate();
luaL_openlibs(lu);
QString str = "print (\"Hello world!\")"; //执行内存脚本
luaL_loadbuffer(lu, str.c_str(), str.length(), "line");
lua_pcall(lu, 0, 0, 0);
lua_close(L);
编译运行后会在终端窗口显示字符串“Hello world!”。
注意实现:
1.运行目录默认为build-xxx目录,构建后会自动生成,可在“项目-->Run”中设置。
2.库文件位置需要指定正确,否则会出现“can't find file ...”之类的错误。
3.dll文件需要拷贝到运行目录下,否则会报0xc0000135错误。
4.库文件指定时的名称问题
mingw下QT编译的库文件通常为“libxxx.a”,其中lib和.a是默认的,所以只需指定xxx即可。这真的是个不起眼的大坑!!!:(
其他请参考
https://www.lua.org/download.html http://www.cnblogs.com/IT-BOY/p/3570764.html
https://www.lua.org/ftp/lua-5.3.4.tar.gz
2.在QT下编译Lua的库
我用的QT环境是qt-opensource-windows-x86-mingw530-5.8.0。
(1)在QT中建立库文件工程lua。
(2)将lua源代码解压到工程目录下,将除了luac.c、lua.c的所有c文件加进工程。
(3)在luaconf.h开始加上#define LUA_BUILD_AS_DLL
(4)选择Release版本编译即可
3.建立testLua测试工程,类型为“Qt Console Application”。
(1)将编译得到的库文件liblua.a拷贝到工程目录下。在工程文件*.pro中添加
LIBS+=-L../testlua-llua
将liblua.dll拷贝到运行目录下。
(2)将lua.h、lualib.h、luaxlib.h三个文件拷贝到工程目录下,并加入到工程中。也可以在*.pro文件中直接用“-I”指定头文件目录。
(3)在main.cpp中加入以下代码:
extern "C" {
#include "lua.h"
#include "lualib.h"
#include "lauxlib.h"
#include "tolua++.h"
}
(4)在main函数中添加以下代码:
lua_State *lu = luaL_newstate();
luaL_openlibs(lu);
QString str = "print (\"Hello world!\")"; //执行内存脚本
luaL_loadbuffer(lu, str.c_str(), str.length(), "line");
lua_pcall(lu, 0, 0, 0);
lua_close(L);
编译运行后会在终端窗口显示字符串“Hello world!”。
注意实现:
1.运行目录默认为build-xxx目录,构建后会自动生成,可在“项目-->Run”中设置。
2.库文件位置需要指定正确,否则会出现“can't find file ...”之类的错误。
3.dll文件需要拷贝到运行目录下,否则会报0xc0000135错误。
4.库文件指定时的名称问题
mingw下QT编译的库文件通常为“libxxx.a”,其中lib和.a是默认的,所以只需指定xxx即可。这真的是个不起眼的大坑!!!:(
其他请参考
https://www.lua.org/download.html http://www.cnblogs.com/IT-BOY/p/3570764.html
相关文章推荐
- Win32下 Qt与Lua交互使用:配置Qt下Lua运行环境
- 简单将sublime text 配置为lua或c#一键编译运行环境
- Gtk与Qt编译环境安装与配置
- Qt Creator + MinGW + OpenCV2.43 (自编译) 环境配置
- java入门 (java的发展,jdk的规范安装与检测,环境变量的配置,java程序的编译与运行)
- eclipse中配置hadoop开发环境-----删除之前版本的hadoop插件、编译hadoop eclipse插件、安装插件、eclipse下运行hadoop程序
- notePad++配置C/C++编译运行环境
- friendly_arm与qt的交叉编译环境配置
- linux下配置Lua运行环境
- 使用Editplus和Dev C++配置C++的编译运行环境
- QtCreator Lua环境配置
- 使用Editplus和MinGW的g++配置C++的编译运行环境
- Mac平台中编译安装Lua运行环境及Hello Lua实例
- Linux JDK配置Java编译、运行环境
- JAVA编译和运行环境的配置
- 使用bcc32做在windowXP上qt3.2.1编译环境的配置
- Editplus配置java编译运行环境
- 运行命令行带 PowerShell & VS & QT 环境(windows下加载QT命令行编译环境-VS版)
- Subline text3 配置java程序编译运行在subline控制台环境和windows控制台
- 如何配置android studio环境实现ionic的编译,运行与打包