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

相关推荐
梦里小白龙8 分钟前
java 通过Minio上传文件
java·开发语言
m0_5613596712 分钟前
基于C++的机器学习库开发
开发语言·c++·算法
星空露珠19 分钟前
速算24点所有题库公式
开发语言·数据库·算法·游戏·lua
2401_8324027520 分钟前
C++中的类型擦除技术
开发语言·c++·算法
努力学习的小廉28 分钟前
我爱学算法之—— 递归回溯综合(二)
开发语言·算法
sheji526130 分钟前
JSP基于信息安全的读书网站79f9s--程序+源码+数据库+调试部署+开发环境
java·开发语言·数据库·算法
2301_7634724630 分钟前
C++网络编程(Boost.Asio)
开发语言·c++·算法
毕设源码-邱学长31 分钟前
【开题答辩全过程】以 基于Java Web的电子商务网站的用户行为分析与个性化推荐系统为例,包含答辩的问题和答案
java·开发语言
程序员清洒36 分钟前
Flutter for OpenHarmony:Text — 文本显示与样式控制
开发语言·javascript·flutter
摇滚侠1 小时前
Java项目教程《尚庭公寓》java项目从开发到部署,技术储备,MybatisPlus、MybatisX
java·开发语言