【转帖】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项目中使用第三方类库可以说是非常常见的事,但是要正 ...
随机推荐
- 使用 UCS(On-Premises) 管理您的GPU资源池,释放AI大模型算力潜能
本文分享自华为云社区<使用 UCS(On-Premises) 管理您的GPU资源池,释放AI大模型算力潜能>,作者:云容器大未来. AI 技术现状及发展趋势 过去十余年,依托全球数据.算法 ...
- LiteOS:剖析时间管理模块源代码
摘要:Huawei LiteOS的时间管理模块以系统时钟为基础,分为2部分,一部分是SysTick中断,为任务调度提供必要的时钟节拍:另外一部分是,给应用程序提供所有和时间有关的服务,如时间转换.统计 ...
- 一分钟带你了解Huawei LiteOS组件开发指南
摘要:本文将基于Huawei LiteOS系统,从组件定义开始带你走进组件开发指南. 本文分享自华为云社区<一分钟带你了解Huawei LiteOS之组件开发指南>,作者: Lionlac ...
- 如何使用参数化查询提高Cypher查询的性能
摘要:在DBMS中,参数化查询被视为一种有效预防SQL注入攻击的手段. 本文分享自华为云社区<使用参数化查询提高Cypher查询的性能:以华为云图引擎GES为例>,作者: 蜉蝣与海. 在D ...
- Java编程中忽略这些细节,Bug肯定找上你
摘要:在Java语言的日常编程中,也存在着容易被忽略的细节,这些细节可能会导致程序出现各种Bug. 本文分享自华为云社区<Java编程中容易忽略的细节总结丨[奔跑吧!JAVA]>,作者:j ...
- 打通数据治理全链路,火山引擎DataLeap数据治理平台公有云版本正式发布
更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 近日,火山引擎DataLeap正式对外发布数据治理平台公有云版.DataLeap是火山引擎大数据研发治理套件, ...
- IntelliJ IDEA lombok log 报红
pom文件中引用了 lombok 插件,但Intellij 代码里仍然是红色提示,具体操作如下 Mac
- Buffer 缓冲区操作
1.缓冲区分片在 NIO 中,除了可以分配或者包装一个缓冲区对象外,还可以根据现有的缓冲区对象来创建一个子缓冲区,即在现有缓冲区上切出一片来作为一个新的缓冲区,但现有的缓冲区与创建的子缓冲区在底层数组 ...
- 【Java 进阶篇】使用 Stream 流和 Lambda 组装复杂父子树形结构(List 集合形式)
目录 前言 一.以部门结构为例 1.1实体 1.2返回VO 1.3具体实现 1.4效果展示 二.以省市县结构为例 2.1实体 2.2返回VO 2.3具体实现 2.4效果展示 三.文章小结 前言 在最近 ...
- Docker--简介&&安装
Docker 是一种应用容器引擎 一 容器 Linux系统提供了Namespace和Cgroup技术实现环境隔离和资源控制 其中Namespace是Linux提供的一种内核级别环境隔离的方法,能使一个 ...