美文网首页LuaLua与cocoscocos2d-Lua
Lua与C交互-环境搭建(原创)

Lua与C交互-环境搭建(原创)

作者: 程序员喜欢自嘲 | 来源:发表于2018-05-04 15:19 被阅读4次

Lua作为一种轻便的嵌入式语言,了解其是如何嵌入宿主语言以及如何与宿主语言交互,对掌握Lua的使用是相当重要的,在日常工作中我们可能一直在使用Lua写具体业务,却忽视了Lua被创造的初衷。我们将从调试环境搭建开始一步步讲解Lua与C交互。

1、平台环境

这里用的是win10 与 visual Studio 2013。 如果你用的是mac,你一定熟悉mac系统跟Xcode,大体原理是一样的。

2、Lua库 

到官网去下载,如果你下载的是源文件,要在C中嵌入Lua, 为方便使用,我们自然需要Lua的头文件和库,所以用vs编译源文件,得到如下文件。当然你也可以下载二进制文件。

如果源文件是C++,只需要#include <lua.hpp>即可。C需要导入 lauxlib.h   lua.h   lualib.h 。 .lib文件是静态库,即便我们使用动态库.dll,调试的时候静态库依然是需要添加依赖的。官方文档中说lua51类似lua5.1的序言一样。至于两个之间怎么配合的,官方并没有说明,反正就是两个都要 。  

3、新建vs工程

    打开VS,新建项目选择如下:

4、引入Lua库

选择项目>xxx属性:

包含目录填入头文件路径,库目录填入库文件路径。还需要设置链接器,如下:

在附加依赖项编辑加入lua静态库,点击确定。

5、检验一下环境

在C或C++源文件中 , #include 头文件后, 输入lua_State、luaL_openlibs等lua C 接口有自动提示且均不报错,就可以说明项目引入lua库成功了。

相关文章

  • Lua与C交互-环境搭建(原创)

    Lua作为一种轻便的嵌入式语言,了解其是如何嵌入宿主语言以及如何与宿主语言交互,对掌握Lua的使用是相当重要的,在...

  • Lua与C数据交互一

    C与Lua的数据交互,是通过虚拟栈来完成数据交互的,在C与Lua之间的交互,实际上是C与虚拟栈之间的交互以及Lua...

  • Lua与C#交互原理

    Lua与C#交互原理 C#与Lua的交互主要是由Lua官方的提供的LuaInterface.dll库实现的。(1)...

  • 使用vs2013工程C++加载lua的文件

    看了CSDN的Lua进阶教程的视频教程教程链接,对Lua和c++的交互有了初步了解,下面是如何搭建开发环境的教程首...

  • 2019-01-14

    Lua与C交互学习笔记 Lua与C交互是通过虚拟栈实现的 在C中调用Lua 方法一 栈中的情况如下表所示 方法二 ...

  • Lua与C#的交互实现

    lua与C#交互使用LuaInterface实现定义变量:1,Lua lua = new Lua() --定义一个...

  • Lua与C交互-访问Lua变量(原创)

    1、交互原理 一个Lua程序与C的交互都是通过Lua虚拟机中的一个堆栈进行的,通过调用Lua C API可以让C中...

  • Lua与C交互简介

    Lua资源获取### Lua各个平台动态库与静态库下载地址Lua源码下载地址 交互原理#### 要理解Lua与C的...

  • C#与Lua交互过程和原理

    C#与Lua交互过程: C# Call Lua :由C#文件先调用Lua解析器底层dll库(由C语言编写),再由d...

  • lua和c的初始

    lua和c的交互包括:c访问lua的变量、c访问lua的table、c调用lua的方法、lua调用c的函数 参考链...

网友评论

    本文标题:Lua与C交互-环境搭建(原创)

    本文链接:https://www.haomeiwen.com/subject/nxtdrftx.html