Perl 7 - 使用 Perlbrew 管理perl 版本

news2024/10/7 14:29:18

在这里插入图片描述


文章目录

    • 关于 Perlbrew
    • 安装 Perlbrew
    • 使用 perlbrew 安装/管理 perl 版本


关于 Perlbrew

  • 官网:https://perlbrew.pl

相关文档:

  • App::perlbrew
    https://metacpan.org/pod/App::perlbrew

Perlbrew 是一个工具,用于管理您$HOME 目录(或您指定的任何位置)中的多个perl安装。
它们是完全孤立的 perl 环境,与系统perl没有关系,彼此之间也没有关系。

有以下好处:

  • 不再需要运行sudo来安装CPAN模块。
  • 轻松尝试每月发布的新perl,并学习新的语言特性。
  • 针对不同的perl版本测试代码。
  • 在使用verndor perl(操作系统自带的)运行应用程序时,避免一些常见的危险,例如:
  • 供应商perl通常有自己的用途,把它弄得太乱可能是个坏主意。升级供应商提供的CPAN模块可能已经是一个坏主意。
  • 升级供应商perl通常伴随着它附带的所有CPAN模块的升级——这可能不是期望的。
  • 一些供应商介绍了他们自己的perl错误,两次!
  • 用于破解perl内部,因此需要在perl .git中安装来自特定提交的多个版本
  • 可以只是为了跟上潮流,一直使用最新的perl版本。

安装 Perlbrew

# 下载安装 
curl -L https://install.perlbrew.pl | bash

# 激活
source ~/perl5/perlbrew/etc/bashrc

Perlbrew 安装包地址:~/perl5/perlbrew/bin/perlbrew


# 查看版本
perlbrew --version
# /Users/xx/perl5/perlbrew/bin/perlbrew  - App::perlbrew/0.97

# 查看帮助
perlbrew -h

# 查看更详细的帮助
perlbrew help

Usage:
    perlbrew command syntax:

        perlbrew <command> [options] [arguments]

    Commands:

        init           Initialize perlbrew environment.
        info           Show useful information about the perlbrew installation

        install        Install perl
        uninstall      Uninstall the given installation
        available      List perls available to install
        lib            Manage local::lib directories.
        alias          Give perl installations a new name
        upgrade-perl   Upgrade the current perl

        list           List perl installations
        use            Use the specified perl in current shell
        off            Turn off perlbrew in current shell
        switch         Permanently use the specified perl as default
        switch-off     Permanently turn off perlbrew (revert to system perl)
        exec           Execute programs with specified perl environments.

        list-modules   List installed CPAN modules for the current Perl version in use
        clone-modules  Re-installs all CPAN modules from one installation to another

        self-install       Install perlbrew itself under PERLBREW_ROOT/bin
        self-upgrade       Upgrade perlbrew itself.

        install-patchperl  Install patchperl
        install-cpanm      Install cpanm, a friendly companion.
        install-cpm        Install cpm, a faster but still friendly companion.
        install-multiple   Install multiple versions and flavors of perl

        download       Download the specified perl distribution tarball.
        clean          Purge tarballs and build directories
        version        Display version
        help           Read more detailed instructions

    Generic command options:

        -q --quiet     Be quiet on informative output message.
        -v --verbose   Tell me more about it.

    See `perlbrew help` for the full documentation of perlbrew, or

    See `perlbrew help <command>` for detail description of the command.


使用 perlbrew 安装/管理 perl 版本

1、查看可安装的 perl 版本

perlbrew available

得到如下版本信息:

# perl
   perl-5.38.0   
   perl-5.36.1   
   perl-5.34.1   
   perl-5.32.1   
   ... 
    perl-5.6.2   


# cperl


2、 安装 perl

perlbrew install perl-5.36.1

安装最新的版本

perlbrew install perl-blead

如果安装失败,可执行下面代码来升级 patchperl

perlbrew install-patchperl

查看已安装的 perl

perlbrew list
# * perl-5.32.0   

3、切换 perl

# 切换到 perl-5.36.1 
perlbrew switch perl-5.36.1

# 在当前 shell 临时使用
perlbrew use perl-blead

4、运行测试

perlbrew exec perl myprogram.pl

perlbrew exec -- perl -E 'say $]'
# 5.032000

5、退出 perlbrew
可返回使用系统 perl

perlbrew off

使用 perlbrew switch 可继续切换为使用 perlbrew


安装 CPAN 模块

perlbrew install-cpanm

# 使用 cpanm 命令安装 CPAN 模块:
cpanm CGI::simple

2023-07-10(一)晴天

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/743771.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Flink基于信用值的流量控制

背景 flink内部实现了一个类似于tcp滑动窗口概念的流量控制功能&#xff0c;以满足其内部的流量控制功能&#xff0c;本文就来讲解下flink实现的基于信用值的流量控制的原理 实现原理 首先&#xff0c;我们先来看一下在flink中是如何实现数据传输的&#xff0c; 从上图可知&…

css animation 鼠标移入暂停会抖动

如图 实现一个赞助商横向滚动列表墙&#xff0c; 上下两排向右滚动&#xff0c;中间向左滚动&#xff0c;鼠标移入暂停当前行。 实现&#xff1a; // 使用animation.moving {animation: move 20s linear infinite; }keyframes move {0% {}100% {transform: translateX(-50%);…

可靠的手机问题修复工具分享 - 修复各种 Android 系统问题

一般来说&#xff0c;安卓手机都可以流畅运行。但不幸的是&#xff0c;有时您的Android手机可能无法正常运行&#xff0c;例如无响应、突然重启等。在这种情况下&#xff0c;您将需要Android手机维修软件。这些 Android 修复工具可以帮助您轻松解决此类问题&#xff0c;并还给您…

QEMU源码全解析4 —— QEMU参数解析(4)

接前一篇文章&#xff1a;QEMU源码全解析3 —— QEMU参数解析&#xff08;3&#xff09; 本文内容参考&#xff1a; 《趣谈Linux操作系统》 —— 刘超&#xff0c;极客时间 《QEMU/KVM》源码解析与应用 —— 李强&#xff0c;机械工业出版社 特此致谢&#xff01; 本回讲解Q…

JavaWeb学生考勤签到请假系统

一、项目简介 本项目是一套JavaWeb学生考勤签到请假系统&#xff0c;主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的Java学习者。 包含&#xff1a;项目源码、数据库脚本等&#xff0c;该项目附带全部源码可作为毕设使用。 项目都经过严格调试&#xff0c;ecl…

生成图片验证码-Google Kaptcha

CaptchaImage生成 验证码 图片 captchaProducerMath.createText() 类似 captchaProducer.createText() 混合带字符的char如下 从若依学的&#xff0c;先看他的引用方式 package com.ruoyi.web.controller.common;import java.awt.image.BufferedImage; import java.io.IOExcept…

【导航算路(RP)模块功能】

什么是RP Route Production/Route Planning 就是在给定自车位置和目的地的情况下&#xff0c;按照用户设定的不同条件&#xff0c;计算出一条或多条从自车位置到目的地的花费(根据用户的设定&#xff0c;可能是指时间&#xff0c;费用等)最少的最优路以供用户使用。 为什么要…

【新版系统架构】第十七章-通信系统架构设计理论与实践

软考-系统架构设计师知识点提炼-系统架构设计师教程&#xff08;第2版&#xff09; 第一章-绪论第二章-计算机系统基础知识&#xff08;一&#xff09;第二章-计算机系统基础知识&#xff08;二&#xff09;第三章-信息系统基础知识第四章-信息安全技术基础知识第五章-软件工程…

ColddBoxEasy_EN靶机详解

ColddBoxEasy_EN靶机详解 上来扫描ip&#xff0c;找到ip后对这个ip进行一个单独的扫描。发现ssh开到4512端口上了&#xff0c;这里其实没用上&#xff0c;给我们挖的坑。 打开网页左下角有个login登陆&#xff0c;是一个wordpress搭建的网站&#xff0c;扫描一下用户名&#x…

U盘文件恢复,简单4步快速恢复文件!

U盘中删除的文件还能恢复吗&#xff1f;从理论上来看&#xff0c;u盘删除的文件其实还没有永久的被删除&#xff0c;但是这取决于多种因素。如果我们及时在新数据写入前对u盘中的数据进行恢复&#xff0c;那么恢复的可能性还是比较大的。 那么可能有朋友会好奇&#xff1a;u盘文…

开源LLM大模型微调简明教程

我相信你们大多数人都听说过 ChatGPT 并尝试过它来回答你的问题&#xff01; 有没有想过幕后发生了什么&#xff1f; 它由 Open AI 开发的大型语言模型 GPT-3 提供支持。 这些大型语言模型&#xff08;通常称为LLM&#xff09;开启了自然语言处理的许多可能性。 推荐&#xff1…

datagrip 更改表名报错

我就想改个表名报错 报错提示 Error Refactoring cannot be performed File D:\datagrip\lib\platform-impl.jar!\standardSchemas\xhtml1-frameset.xsd is located in a read-only container. 后面还有一大堆的错误&#xff0c;当时没有截图 试探: 注:再次之前我已经用use选择…

VMWare在Ubuntu系统下无法启动问题

项目场景&#xff1a; 在Ubuntu系统安装了VMWare虚拟机&#xff0c;已开始还能打开VMWare&#xff0c;能进入正常VM界面。最近怎么进入不了VM主界面。启动虚拟机发现报错&#xff1a;Unable to install all modules. See ****; 问题描述 1、启动VMware&#xff1a;提示内核需…

c++中的时间处理(1)localtime、localtime_r和localtime_s

c中对时间的处理有好几个函数&#xff0c;很多C程序员可能用过&#xff0c;但不一定完全搞得清楚。这里&#xff0c;我先讲解下&#xff1a;localtime、localtime_r和localtime_s的使用 1、localtime localtime用来获取系统时间&#xff0c;精度为秒。 struct tm *localtime…

路径规划算法:基于鹰栖息优化的路径规划算法- 附代码

路径规划算法&#xff1a;基于鹰栖息优化的路径规划算法- 附代码 文章目录 路径规划算法&#xff1a;基于鹰栖息优化的路径规划算法- 附代码1.算法原理1.1 环境设定1.2 约束条件1.3 适应度函数 2.算法结果3.MATLAB代码4.参考文献 摘要&#xff1a;本文主要介绍利用智能优化算法…

动态规划16题

目录 91. 解码方法 1646. 获取生成数组中的最大值 1043. 分隔数组以得到最大和 139. 单词拆分 1277. 统计全为 1 的正方形子矩阵 剑指 Offer II 091. 粉刷房子 剑指 Offer 42. 连续子数组的最大和 300. 最长递增子序列 方案一 方案二 贪心&#xff0c;二分 1027. …

CSS-Grid网格布局笔记

文章目录 父元素属性 基本使用&#xff1a;display 、grid-template-rows、grid-template-columns 合并单元格&#xff1a;grid-template-areas 间距&#xff1a;gap 网格对齐 - item对齐 网格对齐 - 内容对齐 显示单元格与隐式单元格 - 自适应布局 子元素属性 修改子元素起始与…

Visual Studio 2019 + Git 提交命令释解:全部提交、全部提交并推送、全部提交并同步

Visual Studio 2019 Git 提交命令释解&#xff1a;全部提交、全部提交并推送、全部提交并同步。 一、操作命令理解&#xff1a; A、全部提交&#xff1a;即把本地工作区的修改&#xff08;包括添加、删除&#xff09;提交到本地仓库。 B、全部提交并推送&#xff1a;即把本地…

java: 程序包sun.misc不存在

报错java: 程序包sun.misc不存在 解决办法:降JDK版本 切个1.8即可

IMX6ULL-Linux6.3.5版本网卡调试深入讲解

目录 一、先来了解一下imx6ull的网络节点的如何定义的 二、使用默认网卡配置 三、查找eth1对应FEC1复位失败原因 1.修改smsc_phy_reset函数 2.ENET1和ENET2的TX_CLK引脚复位寄存器的SION位为1 3.读取phy寄存器 4.使用正点原子给的内核和设备树文件 5.使用linux-5.19版本…