Lua编译】的更多相关文章

把lua编译出so文件 http://superuser.com/questions/557884/getting-error-recompile-with-fpic http://guiquanz.me/2012/08/02/lua_improvements/ http://lua-users.org/lists/lua-l/2006-10/msg00091.html…
Sublime Text 3(中文)添加Lua编译环境 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) 没有安装 Sublime Text 或 Lua 的请分别跳转至 Sublime Text 3(中文)配置.安装 Lua 在 Windows 下的配置.安装.运行 具体流程 1↓ 点击 菜单栏→→ 工具 →→ 编译系统 →→ 新编译系统menu bar →→ Tools →→ Build System →…
Step By Step(Lua编译执行与错误) 1. 编译:    Lua中提供了dofile函数,它是一种内置的操作,用于运行Lua代码块.但实际上dofile只是一个辅助函数,loadfile才是真正的核心函数.相比于dofile,loadfile只是从指定的文件中加载Lua代码块,然后编译这段代码块,如果有编译错误,就返回nil,同时给出错误信息,但是在编译成功后并不真正的执行这段代码块.因此,我们可以将dofile实现为: 1 function dofile(filename)2 lo…
偶遇一个事情,需要在C里面嵌入Lua代码,这真是痛苦了我好久…. 不知道为啥lua默认编译没有生成.so 的动态链接库,需要修改Makefile生成liblua.so,我用的版本是5.2 一.先修改根目录的 Makefile修改一行TO_LIB= liblua.a liblua.so二.再修改src的Makefile注意,请搜索关键字,第二行是需要修改的,第一行,和第三行是粘贴的,至于粘贴的位置嘛,你看样子比较像的就粘贴一起吧第三行的开始是tab键LUA_SO=liblua.soALL_T= $…
编译lua包含3部分内容:lua库文件(lua*.lib),lua解释器(lua.exe),lua编译器(luac.exe) 首先: 下载源代码,编译批处理(以5.2.3为例): cd srccl /O2 /W3 /c /DLUA_BUILD_AS_DLL l*.cdel lua.obj luac.objlink /DLL /out:lua52.dll l*.objcl /O2 /W3 /c /DLUA_BUILD_AS_DLL lua.c luac.clink /out:lua.exe lua…
如今Python给人的感觉是大,东西多,在Windows上安装后竟然要占100多兆的空间. lua给人的感觉是非常小,非常轻便.Python 2.7在linux下编译出来的代码在strip之后也有3M多,早期版本号应该会更小些,但也应该有700K到800K吧. 那么Python是不是不能编译出轻便.体积小的代码呢?答案是否定的,这里介绍几个Python的变种.来看下Python能够有多小. 1.Pymite 这是一个能够执行在8位单片机上的Python,没想到吧!单片机上的rom往往小于100K…
1.编译环境 http://www.lua.org/download.html下载 解压后 bin目录中lua.exe运行   luac.exe编译成lua字节码 2.基本数据类型 整数,小数,布尔值(true false) 3.局部变量  local 4.复杂数据类型 字符串  表  函数对象 --------字符串 字符串对象就是指向一串文字,它也是一种复杂数据对象 --------表 --------函数 5.变量为空 未定义 不存在时  nil local name = nil…
1.先安装lua-jit,网上说也可以下载lua,不过lua-jit效率比较高,地址:http://luajit.org/download.html我下的是2.0.3版本的下载解压后,直接make && make install就可以了,默认安装在/usr/local目录 2.下载ngx devel包地址:https://github.com/simpl/ngx_devel_kit/tags注意,这个是一个nginx的扩展,不需要编译 3.下载nginx的lua扩展https://gith…
当不想使用户看到lua源码,文本文件可以通过luac,把lua文本文件"编译"成二进制的文件. lc@lc-virtual-machine:~/lua$ luac -o redis-white redis-white.lua lc@lc-virtual-machine:~/lua$ cat redis-white uaS� xV(w@@redis-white.luaA@&� localhost� redis_host redis_port_ENV 编译后的文件还需要lua解析器…
编译lualua项目,其中用到了lua-5.1版本的源码,编译时提示缺少readline库,找不到readline/readline.h头文件等 发现系统中其实有安装readline库不过没有做链接和头文件目录拷贝,anyway不管这些,就当没有,重新安装readline库 1.下载readline-6.2.tar.gz wget -c ftp://ftp.gnu.org/gnu/readline/readline-6.2.tar.gz 放到某个目录下,如/usr/local/ 并解压出来 ta…
一.简单介绍 cocos2dx版本号:3.2 二.问题及解决方式 1.为项目开启Native支持,把项目转为C++项目. 1>.项目开启C++ Native支持,操作例如以下图 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMTQ3NjE3Mw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt=""> 2&…
官网http://www.lua.org/download.html Building Lua is implemented in pure ANSI C and compiles unmodified in all platforms that have an ANSI C compiler. Lua also compiles cleanly as C++. Lua is very easy to build and install. There are detailed instructi…
Lua称为解释型语言的原因:Lua允许在运行源代码之前,先将源代码预编译为一种中间形式.区别解释型语言的主要特征是在于编译器是否是语言运行时库的一部分,即有能力执行动态生成的代码.因为Lua中有dofile函数,才可以将Lua成为一种解释型的语言.        运行Lua代码块有三种形式:      1.dofile 直接编译运行Lua外部代码块,并不返回任何结果.      2.loadfile 编译Lua外部代码块,但不会运行代码,将会以函数的形式返回编译结果.      3.loadst…
1.报之类的错误 /usr/lib/libreadline.so: undefined reference to `PC' /usr/lib/libreadline.so: undefined reference to `tgetflag' /usr/lib/ibreadline.so: undefined reference to `tgetent' /usr/lib/libreadline.so: undefined reference to `UP' /usr/lib/libreadlin…
这篇文章参考自http://blog.sina.com.cn/s/blog_991afe570101rdgf.html,十分感谢原作者的伟大创造,本人亲测可行. 这篇文章记录一下如何在MAC系统环境下,搭建LUA脚本最好的编码环境,具有强大的代码补全,而且可以编译运行. 这里使用到的还是sublime text编辑器.下面开始进行详细的介绍: (1)下载sublime text 注意版本号为2.0.2,下载地址:sublime text 2下载地址 (2)安装lua环境(这里用到的是最新的版本:…
官方说明: http://www.lua.org/manual/5.3/readme.html 在Windows下编译Lua动态链接库的注意事项: 1. 创建一个空的DLL项目: 2. 将src文件夹下的文件导入工程: 3. 把lua.c和luac.c两个文件从工程中移除,这两个文件分别是解释器和编译器的源文件: 4.需要设置LUA_BUILD_AS_DLL宏,从而把LUA_API定义为__declspec(dllexport),否则无法生成.lib: 5. 并且在Properties中把Com…
Lua 环境搭建 Windows 不用 visual studio 系统环境:Win7 64bit 联系方式:yexiaopeng1992@126.com 前言: 最近需要学习Unity3d游戏中的热更新技术,选择ULua方案,因此准备学习一些Lua的基础知识.之前在Ubuntu上曾经写过Lua版本的"HelloWorld", 但那时的环境搭建只需要下载源码,然后 make & make install 就可以了,但一到Windows下就完全不会做了.经过网络查找对比,得到目前…
转自http://blog.chinaunix.net/uid-52437-id-2108789.html Lua 中的函数是一阶类型值(first-class value),定义函数就象创建普通类型值一样(只不过函数类型值的数据主要是一条条指令而已),所以在函数体中仍然可以定义函数.假设函数f2定义在函数f1中,那么就称f2为f1的内嵌(inner)函数,f1为f2的外包(enclosing)函数,外包和内嵌都具有传递性,即f2的内嵌必然是f1 的内嵌,而f1的外包也一定是f2的外包.内嵌函数…
Lua 5.1 参考手册 by Roberto Ierusalimschy, Luiz Henrique de Figueiredo, Waldemar Celes 云风 译 www.codingnow.com Copyright © 2006 Lua.org, PUC-Rio. All rights reserved. 1 - 介绍 Lua 是一个扩展式程序设计语言,它被设计成支持通用的过程式编程,并有相关数据描述的设施. Lua 也能对面向对象编程,函数式编程,数据驱动式编程提供很好的支持.…
参考:http://my.oschina.net/eduosi/blog/169606 安装 readline,lua 编译需要用到这个,centos 可以通过 yum 直接安装,如果不需要系统的,可以编译安装 yum install readline yum install readline-devel 或者手动编译: wget -c ftp://ftp.gnu.org/gnu/readline/readline-6.2.tar.gz tar -zxvf readline-6.2.tar.gz…
局部定义与代码块: 使用local声明一个局部变量或局部函数,局部对象只在被声明的那个代码块中有效. 代码块:一个控制结构.一个函数体.一个chunk(一个文件或文本串)(Lua把chunk当做函数处理) 这样,可以在chunk内部声明局部函数,该函数仅在chunk内可见,并且词法定界保证了包内其他函数可以调用此函数.  在chunk内部定义多个local function并且相互调用(或定义local递归调用函数)时,最好先声明,再定义. 应该尽可能的使用局部变量(使用关键词local声明的变…
转子: http://www.cnblogs.com/shengshuai/p/4244851.html 参考: http://www.ttlsa.com/nginx/nginx-lua/ 学习:http://jinnianshilongnian.iteye.com/blog/2186448 安装 readline,lua 编译需要用到这个,centos 可以通过 yum 直接安装,如果不需要系统的,可以编译安装 yum install readline yum install readline…
原文:(PDF) . 摘要 一等(first-class)函数是一种非常强大的语言结构,并且是函数式语言的基础特性.少数过程式语言由于其基于栈的实现,也支持一等函数.本文讨论了Lua 5.x用于实现一等函数的新算法.与之前所使用的技术不同,该算法不需要对源代码做静态分析(一种会极大降低Lua代码生成器即时性的技术)并且可支持使用顺序栈存储常规局部变量. 1 介绍 一等函数是函数式语言的标志性特征,在过程式语言中也是很实用的概念.很多过程式函数如果以高阶函数的形式编写则会增加可读性.例如,C语言标…
1.目前最新的lua版本是lua5.2.3 2.官网下载地址:http://www.lua.org/ftp/ 3.lua的初衷就是一个用于c/c++的小巧的脚本语言,本身是什么功能都没有的,需要手动用C++扩展它. 4.我们在实际的应用开发(基本上是游戏开发),通常是用C/C++实现功能,而用lua来实现逻辑. 5.lua是一个动态的脚本语言,动态是指程序在运行时可以改变其结构. 6.解压下载后的lua包发现,src全是用c语言开发的,因此可知其跨平台性非常良好 7.我们可以在目前的三大主流平台…
在自己的lua文件中,如果使用到了自己写的C库或者第三方库,想让lua编译到自己指定的目录下寻找*.lua或*.so文件的时候,可以再自己的Lua代码中添加如下代码,可以指定require搜索的路径. package.path = '/usr/local/share/lua/5.1/?.lua;/home/resty/?.lua;'    --搜索lua模块    package.cpath = '/usr/local/lib/lua/5.1/?.so;'        --搜索so模块 如果是…
Lua中的函数是一阶类型值(first-class value),定义函数就象创建普通类型值一样(只不过函数类型值的数据主要是一条条指令而已),所以在函数体中仍然可以定义函数.假设函数f2定义在函数f1中,那么就称f2为f1的内嵌(inner)函数,f1为f2的外包(enclosing)函数,外包和内嵌都具有传递性,即f2的内嵌必然是f1的内嵌,而f1的外包也一定是f2的外包.内嵌函数可以访问外包函数已经创建的所有局部变量,这种特性便是所谓的词法定界(lexical scoping),而这些局部…
看了上一篇Lua环境搭建具体http://blog.csdn.net/liuwumiyuhuiping/article/details/9196435 为了方便学习. 具体新开始搭建一下学习的小框架. lib存放是 lua编译出来的动态库.Bin存放的是 应用程序 .test存放的就是lua 的测试文件.LuaSrc就是我们的源码了.LuaSrc 里面包含了两个工程一个是Luasrc 和LuaScriptMg . 可以从一下地址下载我配置好的工程.http://download.csdn.net…
局部定义与代码块: 使用local声明一个局部变量或局部函数,局部对象只在被声明的那个代码块中有效. 代码块:一个控制结构.一个函数体.一个chunk(一个文件或文本串)(Lua把chunk当做函数处理) 这样,可以在chunk内部声明局部函数,该函数仅在chunk内可见,并且词法定界保证了包内其他函数可以调用此函数.  在chunk内部定义多个local function并且相互调用(或定义local递归调用函数)时,最好先声明,再定义. 应该尽可能的使用局部变量(使用关键词local声明的变…
条件语句判断时,只有false和nil会导致判断为假,其他的任何值都为真. Lua 的字符串与编码无关: 它不关心字符串中具体内容. 标准 Lua 使用 64 位整数和双精度(64 位)浮点数, 但你也可以把 Lua 编译成使用 32 位整数和单精度(32 位)浮点数. 以 32 位表示数字对小型机器以及嵌入式系统特别合适. table 是一个关联数组, 也就是说,这个数组不仅仅以数字做索引,除了 nil 和 NaN 之外的所有 Lua 值 都可以做索引 Lua 语言对大小写敏感: and 是一…
前面的话 第一次接触Lua是因为Unity游戏中需要热更,但是一直没搞懂Lua是怎么嵌入到别的语言中执行的,如何互相调用的.这次打算好好了解一下C跟lua是如何交互的 那么如何使用Lua语言? lua是c语言编写的,而且开源.可以在https://www.lua.org官网上下载Lua的源码,然后尝试编译它!是不是跟我一样好激动,一直用集成环境,写上层语言,今天居然要碰编译了!!~ 可怎么编译呢? 让我们召唤出编译神器:gcc![GNU编译器套件(GNU Compiler Collection)…