Lua 篇(一)— 安装运行Hello World

目录

  • 前言
  • [一、Lua 是什么?](#一、Lua 是什么?)
  • 二、Lua和C#的区别
  • [三、安装 Lua](#三、安装 Lua)
    • [Linux 系统上安装](#Linux 系统上安装)
    • [Mac OS X 系统上安装](#Mac OS X 系统上安装)
    • [Window 系统上安装](#Window 系统上安装)
    • [emmylua+Rider 安装(推荐)](#emmylua+Rider 安装(推荐))
  • 四、Lua学习资料

前言

Lua 是一种轻量级的嵌入式脚本语言,它可以与 C 语言无缝集成,提供了强大的编程能力和灵活的语法。Lua 在很多领域都有广泛的应用,比如游戏开发,网络编程,数据分析等。本文就介绍了 Lua 的安装和运行


一、Lua 是什么?

Lua 是一种由巴西里约热内卢天主教大学的 Roberto Ierusalimschy,Waldemar Celes 和 Luiz Henrique de Figueiredo 开发的开源语言,它建立在 C 语言之上,可以作为一个独立的语言,也可以作为一个嵌入式的库,与其他语言交互。Lua 的名字来自于葡萄牙语的"月亮"。

Lua 的设计目标是简单,小巧,高效,可移植,易扩展。Lua 的语法借鉴了很多其他语言,比如 Pascal,Perl,Python 等,但也有自己的特色,比如使用表(table)作为唯一的数据结构,支持多重赋值,使用冒号(:)作为方法调用的语法糖,支持协程(coroutine)等。

Lua 的应用领域非常广泛,它可以用来开发桌面应用,移动应用,嵌入式系统,网络服务器,数据库,游戏等。Lua 在游戏开发中尤为突出,很多知名的游戏都使用了 Lua 作为脚本语言,比如 World of Warcraft,Angry Birds,Garry's Mod 等。

二、Lua和C#的区别

Lua可以在几乎所有的操作系统和平台进行编译运行

可以很方便的更新代码

更新了代码后,可以直接在手机上运行,不需要重新安装(后续的热更新方案)

C#只能在特定的操作系统中进行编译成dll文件,然后打包进安装包在其他平台(Android、iOS)运行

在移动平台上不能更新替换已有的dll文件,除非重新下载安装包

三、安装 Lua

Linux 系统上安装

Linux & Mac上安装 Lua 安装非常简单,只需要下载源码包并在终端解压编译即可,本文使用了5.3.0版本进行安装:

bash 复制代码
curl -R -O http://www.lua.org/ftp/lua-5.3.0.tar.gz
tar zxf lua-5.3.0.tar.gz
cd lua-5.3.0
make linux test
make install

Mac OS X 系统上安装

bash 复制代码
curl -R -O http://www.lua.org/ftp/lua-5.3.0.tar.gz
tar zxf lua-5.3.0.tar.gz
cd lua-5.3.0
make macosx test
make install

接下来我们创建一个 HelloWorld.lua 文件,代码如下:

bash 复制代码
print("Hello World!")

执行以下命令:

bash 复制代码
$ lua HelloWorld.lua

输出结果为:

bash 复制代码
Hello World!

Window 系统上安装

window 下你可以使用一个叫 "SciTE" 的 IDE环 境来执行 lua 程序,下载地址为:

Github 下载地址:https://github.com/rjpcomputing/luaforwindows/releases

双击安装后即可在该环境下编写 Lua 程序并运行。

emmylua+Rider 安装(推荐)

下载安装并激活好rider(本次版本基于:JetBrains Rider 2022.3.3)

从插件商店中安装emmylua

在unity中设置好,使用rider打开项目即可

rider中添加关键字符适配

rider->设置->编辑器->文件类型->找到Lua language file

添加 .lua.txt .lua 识别文件后缀

新建调试配置Lua Debugger

Connection选项选择Tcp (Debugger connect IDE)。别选错了,这步很重要!

四、Lua学习资料

1、《Programming in Lua》第四版

2、http://www.runoob.com/lua/lua-tutorial.html

3、Lua官网:www.lua.org

相关推荐
lsx20240612 分钟前
传输对象模式
开发语言
ch.ju15 分钟前
Java Programming Chapter 4——Member method
java·开发语言
笨蛋不要掉眼泪18 分钟前
Java并发编程:ReentrantLock与AQS原理剖析
java·开发语言·并发
念何架构之路23 分钟前
Go依赖管理
开发语言·后端·golang
liudanzhengxi25 分钟前
CUDA转OpenCL:跨平台内核迁移实战
开发语言
吃好睡好便好28 分钟前
用if…elseif…end语句输出成绩等级
开发语言·前端·javascript·数据库·学习·matlab·信息可视化
努力努力再努力wz28 分钟前
【Redis入门系列】:Redis 内部编码机制与 String 深度解析:SDS 底层实现、三种编码与核心命令详解
c语言·开发语言·数据结构·数据库·c++·redis·缓存
必胜刻29 分钟前
Go 调用Coze工作流实现 AI 游戏生成
开发语言·ai·golang·gin
夕除30 分钟前
spring boot 12
java·开发语言·python
Brilliantwxx31 分钟前
【C++】 认识STL set与map(基础接口+题目OJ运用)
开发语言·数据结构·c++·笔记·算法