ubuntu16环境下QT编译lua5.1.5,并静态链接lua
前言:
本文仅供学习,非商业用途,侵删
目前,在Linux系统的QT关于如何编译并静态链接lua语言的的教程少之又少,因此,本菜鸟在此贡献一点绵薄之力。本次教程的软件版本为Ubuntu16.04的64位,QT creator 5.13.2,lua 5.1.5。关于QT creator 5.13.2的下载安装请找其他教程,lua的下载建议去官网。
一、生成lua的静态链接库文件:
1.1下载lua的源码安装包:
我这里选择去官网下载https://www.lua.org/download.html,版本是5.1.5.
1.1.1 修改源码文件的权限:
在终端输入sudo chmod 777 lua-5.1.5.tar.gz
1.1.2 解压文件包:
在终端输入tar -xzvf lua-5.1.5.tar.gz
1.2 Qt Creator编译生成lua的静态链接库:
1.2.1 新建QT项目
新建项目,选择library–>C++ Library,点choose
1.2.2 给项目位置以及命名设置
此处命名为lua,创建位置如图所示
1.2.3定义构建系统
选择qmake,然后点next
1.2.4 定义项目细节
Type这里选择statically linked library,其余默认选择,然后就选next。
1.2.5 套件选择
这里选择默认的,然后next
1.2.6 完成,保存项目
1.2.7 lua源码编译
将解压的lua源码包的src文件夹复制到上一步的”lua”C++ library文件夹中,将src所有文件添加进工程。如下图添加方式。
然后,选择Release版本编译即可。如下图所示的编译
二、Qt项目工程调用lua的静态链接库
2.1 复制静态链接库和头文件到项目工程文件夹
上一步编译生成的.a文件复制到新建的lib文件夹,和再将src文件下的lauxlib.h、lua.h、luaconf.h、lualib.h复制到include文件夹下。将lib和include文件夹复制到新建的QT项目工程下,然后给项目工程添加库如下图所示。
2.2 选择库的类型
库的类型选择外部库,如图所示。
2.3 选择文件
Library file 选择.a文件,include path 选择include文件夹,接下来点next。因此,添加成功。
2.4 添加代码
要在调用lua代码的头文件需要添加如下几行代码。
extern "C"
{
#include "include/lua.h"//具体文件路径,以实际为准
#include "include/lauxlib.h"//具体文件路径,以实际为准
#include "include/lualib.h"//具体文件路径,以实际为准
}
至此,你可以愉快地使用lua编程了!