Lua 教程-01

原创 2016年08月30日 14:03:23

Lua 教程-01

下载源码

去官网下载lua源码,比如版本5.3.3

编译

根据readme中提示:

  • library:
    • lapi.c lcode.c lctype.c ldebug.c ldo.c ldump.c lfunc.c lgc.c llex.c lmem.c lobject.c lopcodes.c lparser.c lstate.c lstring.c ltable.c ltm.c lundump.c lvm.c lzio.c lauxlib.c lbaselib.c lbitlib.c lcorolib.c ldblib.c liolib.c lmathlib.c loslib.c lstrlib.c ltablib.c lutf8lib.c loadlib.c linit.c
  • interpreter:
    • library, lua.c
  • compiler:
    • library, luac.c

其实可以写一个cmake文件试试,不过网上有现成的bat,那就直接拿来用吧

cd src
cl /O2 /W3 /c /DLUA_BUILD_AS_DLL l*.c
del lua.obj luac.obj
link /DLL /out:lua53.dll l*.obj
cl /O2 /W3 /c /DLUA_BUILD_AS_DLL lua.c luac.c
link /out:lua.exe lua.obj lua53.lib
del lua.obj
link /out:luac.exe l*.obj
cd ..

打开vs的命令工具,执行,就可以了。最后得到三个文件

其它方法

组成分析

可以知道lua由3部分组成:

  • Lua链接库
  • Lua解释器
  • Lua编译器

用vs分开编译

编译Lua链接库

  • 新建vs项目
  • 将src目录下文件全部拷贝到项目中,删除lua.c,luac.c和lua.hpp
  • 可以设置编译64位,Configuration Type Static library(.lib), Precompiled Header: Not using Precompiled Header, Multi-threaded(/MT).
  • 得到Lua53.lib文件

编译Lua解释器

  • 新建vs项目
  • 将src目录下文件全部拷贝到项目中,删除luac.c
  • 设置当前项目以来与Lua53项目
  • 编译后会得到Lua.exe 文件,这就是Lua解释器lua.exe

编译Lua编译器

  • 新建vs项目
  • 将src目录下文件全部拷贝到项目中,删除lua.c
  • 设置当前项目以来与Lua53项目
  • 编译后会得到Luac.exe 文件,这就是Lua编译器Luac.exe

验证

  • 点击Lua.exe
  • 输入:
io.write("Hello I get a powerful program language called Lua \n")
io.write(string.format("This Lua is %s and now is %s \n",_VERSION,os.date()))
  • 会输出相应信息
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

lua51plus.part01.rar(1/2)

  • 2010-08-18 08:15
  • 5.5MB
  • 下载

Mac下cocos2dx3.1用Cocos IDE写的Lua binding篇01

require "Cocos2d" require "Cocos2dConstants" -- cclog cclog = function(...)     pr...

Cocos2dx 3.12 Lua开发环境搭建_01

本文记录在 Windows 下搭建 cocos2dx lua 开发环境,还有调试设置。 系统:Windows 7 64 IDE:Mircrosoft Visual Studio 2013 Cocos2...

Lua学习笔记---01

写在前面的话:Lua是一个脚本语言,嵌入别的语言中。详细的介绍大家自己百度一下Lua 值与类型 Lua 是一种 动态类型语言。这意味着变量没有类型,只有值才有类型。语言中不存在类型定义。而所有的值本...

lua学习01——基础

lua学习01 ——lua 的 基本类型 ——lua 的 table ——lua 的 function

Lua学习Day01

刚刚从Unity3D培训学校毕业,满以为自己一毕业就可以拿到8K左右的高工资,甚至还奢望过10K以上。但是现实会给你狠狠的上一课。 在学校里学的那点东西根本不够看,当当新手还可以,但是稍微往深处挖一...

腾讯XLua 01-lua来写MonoBehaviour

前几天腾讯开源了热更新矿建XLua,今天开始第一天的学习(每天更新)Example1.C# 与lua的互相调用public class Helloworld : MonoBehaviour { ...

Lua脚本学习日记-01 (又开新坑)

画画是不可能画画的了,这辈子不可能画画了。写C++又不会,就只能做做lua脚本这样子。 Unity并没有弃坑,最近一直在偷偷摸摸做,只是很久没有更博。哪天心情比较好把暑假做的《E可赛艇》代码和Spri...

Lua游戏开发01——程序设计与设计背后的思考

我们回顾上一章对程序的改进。简而言之,最大的改进就是把程序结构用三个函数表达了:init(), deint()和main()。这个改动看似微不足道。但我要阐明的是整个软件工程发展的精华就凝聚于这三个函...

Lua与JS差异,简明教程

  • 2017-09-21 11:14
  • 275KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)