LuaC API开发环境搭建保姆级教程

一.掌握LuaC API的作用

为了精细研究一些Unity的Lua框架,比如toLua, XLua,框架的底层是用C#调用LuaC API实现的,因此掌握LuaC API可以更好的掌握各种Lua框架。

二.编译Lua源码成静态库

Lua官网

2.1 进入Lua官网下载Lua源码

2.2 解压后得到下图目录

2.3 新建C++静态库项目

先将项目初始得头文件源文件删除

对头文件和源文件添加现有项,在src目录中用类型排序后,将头文件和源文件全部选中

项目-属性-C/C++-预编译头-不使用预编译头(不做这步便宜时会报错)

生成解决方案 或 重新生成解决方案

将lib文件拷贝到src目录下

三.在C++项目主动导入静态库,调用LuaC API

3.1 新建C++控制台项目

3.2 添加附加包含目录

项目-属性-C/C++-附加包含目录,加入静态库所在目录

3.3 添加附加库目录

项目-属性-链接器-常规-附加库目录,加入静态库所在目录

3.4 添加附加依赖项

项目-属性-链接器-输入-附加依赖项,加入静态库文件名

四.测试API调用

cpp 复制代码
extern "C"
{
#include <Lua.h>
#include <lualib.h>
#include <lauxlib.h>
}
#include <iostream>

int main()
{
    lua_State* L = luaL_newstate();
    luaL_openlibs(L);
    const char* lua_script = "print('Hello LuaC')";
    int status = luaL_dostring(L, lua_script);
    lua_close(L);

}
相关推荐
每天回答3个问题24 分钟前
leetcodeHot100 | 104.二叉树的最大深度
c++·面试·
坚果派·白晓明25 分钟前
【鸿蒙PC三方库移植适配框架解读系列】第五篇:完整流程图与角色职责
c语言·c++·华为·harmonyos·鸿蒙
xiao_li_ya1 小时前
C++学习日记1(`*`的理解、const关键词)
开发语言·c++
Sator12 小时前
unity解决粒子与物体接触时的硬边缘问题
unity·游戏引擎
郝学胜-神的一滴3 小时前
Qt 入门 01-02: 开发环境搭建指南
开发语言·c++·qt·客户端
Languorous.3 小时前
C++数据结构高阶|布隆过滤器(Bloom Filter)深度解析:从原理到手写实现,面试高频考点全覆盖
数据结构·c++·面试
山河木马3 小时前
Emscripten 从 C/C++ 调用 JavaScript
前端·javascript·c++
TANGLONG2223 小时前
【C++】继承详解——基类/派生类、作用域、默认函数、菱形继承(超详细)
java·c语言·c++·经验分享·笔记·ajax
小侯不躺平.3 小时前
C++ Boost库【2】 --stringalgo字符串算法
linux·c++·算法
code_whiter4 小时前
C++11(stack和queue)
开发语言·c++