【转帖】Lua,LuaJIT,Luarocks的安装与配置-史上最详细【Linux】
目录
既然各位都点开看了,那么Lua语言不用我介绍了吧,LuaJIT是lua的一个Just-In-Time也就是运行时编译器,就是存储热点代码直接转化为二进制,JIT是一个概念,Java 底层也有JIT编译器。Luarocks是一个 Lua 包管理工具,基于 Lua 语言开发,提供一个命令行的方式来管理 Lua 包依赖、安装第三方 Lua 包等,可以类比Java的maven/gradle
最近因为工作需要,需要使用Lua这门脚本语言,相比于Java的生态lua真是一言难尽。。。有种没人用的错觉。Lua版本更新好慢,5.4都是七八年前的东西了,,,资料也少的可怜。总之整理个入门安装篇,方便我自己回看,也给大家一些指引吧,而且从实习工作后就没怎么写过博客了,想重拾起来,怀念之前一天写两篇博客的日子,现在一年写两篇,哈哈哈
一,lunux下lua安装
1, 下载lua源码
wget http://www.lua.org/ftp/lua-5.1.5.tar.gz
2, 解压文件
tar zxf lua-5.1.5.tar.gz
3, 移动到目标目录 ,并编译安装
-
cd lua-5.1.5
-
make linux && make install
注意:执行make linux && make instal命令时可能会报错!是因为GUN缺少对应的三方库(和Lua无关) LUA:编译 LUA 报错:ERROR: READLINE/READLINE.H: NO SUCH FILE OR DIRECTORY
我们执行下面命令安装三方库
yum install -y readline-devel
4,测试是否安装成功
lua
5,设置环境变量(我没设置貌似也自动添加到了环境变量,在其他目录执行lua命令也能执行)
-
用root权限打开etc/profile文件
-
vim /ect/profile
-
在文件尾部加入(冒号后面的的是lua启动程序路径)
-
export PATH=${PATH}:/usr/local/lua-5.1.5/src
-
保存后刷新环境变量:
-
source /etc/profile
二,安装luarocks---lua包管理工具
1,下载,解压源码,并进入对应的文件夹
-
wget http://luarocks.org/releases/luarocks-2.2.1.tar.gz
-
tar -zxvf luarocks-2.2.1.tar.gz
-
cd luarocks-2.2.1
2,指定luarocks安装路径,以及lua包存放路径
./configure --prefix=/usr/local --with-lua=/usr/local
3,编译安装
make && sudo make install
4,验证安装
luarocks
--prefix 设置 Luarocks 安装路径,--with-lua 指定 Luarocks 依赖的 Lua 安装路径。
为何强调设置 --prefix
设置 prefix 会自动将 Luarocks 以及往后使用 Luarocks 安装的 Lua 包,LuaC 包都安装到 Luarocks 安装路径下的相应位置,否则相关的包文件散落在文件系统中,显得杂乱不便于管理,如果所安装的 Lua 模板包含 bin 文件,则会自动安装到此目录下的 bin 路径,与 Luarocks 可执行文件同一路径,更便于管理、使用。
三,LuaJIT的安装
1,下载luaJIT源码,解压,并进入到对应文件夹
-
wget http://luajit.org/download/LuaJIT-2.0.5.tar.gz
-
tar xzvf LuaJIT-2.0.5.tar.gz
-
cd LuaJIT-2.0.5
2,编译安装(prefix指定安装路径,但好像不指定prefix也是默认当前LuaJIT-2.0.5文件夹),并验证
-
make install PREFIX=/usr/local/LuaJIT
-
luajit -v
【转帖】Lua,LuaJIT,Luarocks的安装与配置-史上最详细【Linux】的更多相关文章
- 史上最详细Windows版本搭建安装React Native环境配置 转载,比官网的靠谱亲测可用
史上最详细Windows版本搭建安装React Native环境配置 2016/01/29 | React Native技术文章 | Sky丶清| 95条评论 | 33530 views ...
- 史上最详细的Android Studio系列教程一--下载和安装
链接地址:http://segmentfault.com/a/1190000002401964#articleHeader4 原文链接:http://stormzhang.com/devtools/2 ...
- Vagrant (1) —— 基本安装与配置(上)
Vagrant (1) -- 基本安装与配置(上) 摘要 基本安装与配置 版本 Vagrant版本: 1.8.1 内容 启动运行 $ vagrant init hashicorp/precise64 ...
- 史上最详细mac安装Qt教程
史上最详细mac安装Qt教程,小白看过来! 这是一篇非常适合Qt入门小白的的安装Qt教程,因为这学期我们小组的一个关于高速救援的项目要用到Qt与web进行交互式展现相关的图像,由于没有MSVC这个插件 ...
- Vmware15 + Ubuntu18.0.4 安装教程(史上最详细记录)【多图预警】
转载csdn: Vmware15 + Ubuntu18.0.4 安装教程(史上最详细记录)[多图预警]_亦靈兒的博客-CSDN博客
- ubuntu下安装和配置apache2+SVN的详细方法介绍
ubuntu安装和配置SVN第一步:安装apache2 libapache2-svn subversionsudo apt-get install apache2sudo apt-get insta ...
- 史上最详细最全的Linux上安装Oracle的教程-centos7
一.安装Oracle前准备 1.创建运行oracle数据库的系统用户和用户组 [humf@localhost ~]$ su root #切换到root Password: [root@localhos ...
- centos7.2安装redis与配置(史上最全)
学习了php已经快三年了,一直是在盲目的忙,也没整理下笔记,今天整理一下 分享下安装redis的方法 #首先去redis官网去下载 http://www.redis.cn/download.htm ...
- react-native学习笔记--史上最详细Windows版本搭建安装React Native环境配置
参考:http://www.lcode.org/react-native/ React native中文网:http://reactnative.cn/docs/0.23/android-setup. ...
- 史上最详细的CocoaPods安装教程
虽然网上关于CocoaPods安装教程多不胜数,但是我在安装的过程中还是出现了很多错误,所以大家可以照下来步骤装一下,我相信会很好用. 前言 在iOS项目中使用第三方类库可以说是非常常见的事,但是要正 ...
随机推荐
- SAM适配下游任务的探究:SAM Adapter
本文分享自华为云社区<SAM适配下游任务的探究:SAM Adapter>,作者:Hint. 近期大模型的涌现给AI研究带来显著的发展,META的工作Segment Anything(SAM ...
- 想发自己的NFT,你要先搞清楚这6个问题
摘要:NFT是Web3世界中标记数据资产独特性的标识,是数据权益的载体. 本文分享自华为云社区<加密数字艺术NFT背后你关心的六个问题>,作者: 薛腾飞 . Connect Wallet ...
- Springboot中,如何读取配置文件中的属性
摘要:在比较大型的项目的开发中,比较经常修改的属性我们一般都是不会在代码里面写死的,而是将其定义在配置文件中,之后如果修改的话,我们可以直接去配置文件中修改,那么在springboot的项目中,我们应 ...
- 登录appuploader
转载:登录appuploader 常规使用登录方法 双击appuploader.exe 启动appuploader 点击底部的未登录,弹出登录框 在登录框内输入apple开发者账号 如果没有app ...
- 9月活动回顾(免费领取PPT)|火山引擎DataLeap、ByteHouse多位专家带来DataOps、实时计算等前沿技术分享!
更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 在上月举行的火山引擎开发者社区 Meetup 第12期暨超话数据专场<数智化转型背景下的火山引擎大数据技 ...
- Jenkins Pipeline 流水线 - withCredentials 使用
添加凭证 Pipeline script pipeline { agent any stages { stage('withCredentials 使用凭证') { steps { withCrede ...
- 构造函数中,获取yml中的参数
成员变量的注入是在Bean创建成功之后,通过setter方法进行注入的.所以下面会获取不到值 @RestController public class VipsoftImController { @A ...
- MySQL 创建存储过程注意项
MySQL server version for the right syntax to use near 'IF' MySQL server version for the right synta ...
- Java 模拟数据库连接池的实现
前面学习过等待 - 通知机制,现在我们在其基础上添加一个超时机制,模拟从连接池中获取.使用和释放连接的过程.客户端获取连接的过程被设定为等待超时模式,即如果在 1000 毫秒内无法获取到可用连接,将会 ...
- Go--gjson
GJSON 是一个用于处理 JSON 数据的 Go 语言库.它提供了一些方便的功能,例如解析 JSON 字符串.查询 JSON 对象.生成 JSON 对象等 下载gjson: go get -u gi ...