分类: Python/Ruby
2012-03-17 14:50:20
Lua是一门很小巧的语言,为保证良好的可移植性,Lua使用ANSI C编写。因此Lua的移植灰常简单,只需要使用正确的交叉编译器就好了。 本文介绍如何将Lua移植到ARM平台,分x个步骤,并使用如下环境: 1. 操作系统:Ubunt10.04 2. 交叉编译器:arm-linux-gcc 4.3.2版本(如果你不知道怎么搭建交叉编译环境,可以参考我的另一篇文章:http://hi.baidu.com/hqwfreefly/blog/item/8364fed7b3f58dc950da4b5f.html ) 3.Lua5.1版本源码 移植步骤: 1下载Lua源代码: 2 解压并进入目录,如图: 3修改并保存Makefile文件(共两处):第一处:第8行PLAT= none修改为PLAT= ansi 第二处:第10行CC= gcc 修改为CC= arm-linux-gcc 4执行make命令,如图: 生成很多.o库文件,一个lua可执行文件(解释器)和一个luac可执行文件(编译器,产生中间代码)。 5如果不打算在你的ARM开发板上使用那些库而只是想运行Lua脚本,则只需要将lua文件复制到开发板即可。写个简单的脚本试试吧: --[测试脚本: test.lua--] Animal = { name = "Tom", eat = function(self, food) food = food or "unknown food" print("My name is " .. self.name .. "\nI eat " .. food) end, } Animal:eat("fish") 执行:./lua test.lua 结果:【笔者纸上谈兵,没得板子,感兴趣的童鞋帮忙试下~.~】 |