在 Linux 和 Windows 下源码安装 Perl

   2023-02-09 学习力0
核心提示:编者荐语:目前python已经火遍微信朋友圈广告以及公众号底部广告,各种***广告大有追赶360借条之势,不过perl依然有广泛的基础,有很多生物软件需要依赖perl语言,很多人嘲笑写perl的落伍了,其实我们不仅会perl,还精通python,R……以下文章来源于生信科技

在 Linux 和 Windows 下源码安装 Perl

编者荐语:

目前python已经火遍微信朋友圈广告以及公众号底部广告,各种***广告大有追赶360借条之势,不过perl依然有广泛的基础,有很多生物软件需要依赖perl语言,很多人嘲笑写perl的落伍了,其实我们不仅会perl,还精通python,R……

以下文章来源于生信科技爱好者 ,作者沈维燕

Perl 是一种功能丰富的计算机程序语言,运行在超过 100 种计算机平台上,适用广泛,从大型机到便携设备,从快速原型创建到大规模可扩展开发。在生物信息分析领域,Perl 主要是做数据预处理、文本处理和格式转换、对算法效率要求不高的分析软件开发,系统管理和 pipeline 搭建等工作。这里对 Linux(主要是 CentOS)、Windows 下 Perl 的安装做一个备忘。

一、CentOS 7 下安装 Perl

  1. 源码包下载

在官方网站下载新版本的源码包:http://www.perl.org/get.html,我下载的是 perl-5.26.1.tar.gz。

  1. 解压,设置源码
    $ tar zvxf perl-5.26.1.tar.gz
    $ cd perl-5.26.1
    $ ./Configure --help
    Usage: Configure [-dehrsEKOSV] [-f config.sh] [-D symbol] [-D symbol=value]
    [-U symbol] [-U symbol=] [-A command:symbol…]
    -d : use defaults for all answers.
    -e : go on without questioning past the production of config.sh.
    -f : specify an alternate default configuration file.
    -h : print this help message and exit (with an error status).
    -r : reuse C symbols value if possible (skips costly nm extraction).
    -s : silent mode, only echoes questions and essential information.
    -D : define symbol to have some value:
    -D symbol symbol gets the value ‘define’
    -D symbol=value symbol gets the value ‘value’
    common used examples (see INSTALL for more info):
    -Duse64bitint use 64bit integers
    -Duse64bitall use 64bit integers and pointers
    -Dusethreads use thread support
    -Dinc_version_list=none do not include older perl trees in @INC
    -DEBUGGING=none DEBUGGING options
    -Dcc=gcc choose your compiler
    -Dprefix=/opt/perl5 choose your destination
    -E : stop at the end of questions, after having produced config.sh.
    -K : do not use unless you know what you are doing.
    -O : ignored for backward compatibility
    -S : perform variable substitutions on all .SH files (can mix with -f)
    -U : undefine symbol:
    -U symbol symbol gets the value ‘undef’
    -U symbol= symbol gets completely empty
    e.g.: -Uversiononly
    -A : manipulate symbol after the platform specific hints have been applied:
    -A append:symbol=value append value to symbol
    -A symbol=value like append:, but with a separating space
    -A define:symbol=value define symbol to have value
    -A clear:symbol define symbol to be ‘’
    -A define:symbol define symbol to be ‘define’
    -A eval:symbol=value define symbol to be eval of value
    -A prepend:symbol=value prepend value to symbol
    -A undef:symbol define symbol to be ‘undef’
    -A undef:symbol= define symbol to be ‘’
    e.g.: -A prepend:libswanted='cl pthread ’
    -A ccflags=-DSOME_MACRO
    -V : print version number and exit (with a zero status).

设置源码

$ ./Configure -des -Dprefix=/usr/local/software/Perl-5.26 -Dusethreads -Uversiononly

  1. 编译安装
    $ make

    make[1]: *** [IO.o] Error 1
    make[1]: Leaving directory `/users/rmi1/build/perl-5.12.0/dist/IO’
    Unsuccessful make(dist/IO): code=512 at make_ext.pl line 449.
    make: *** [lib/auto/IO/IO.so] Error 2

如果在 make 编译过程中出现如上报错,请参考 Make error when compiling Perl 5.12.1 (RHEL 5.5) 执行下面操作:

$ make clean
$ unset C_INCLUDE_PATH
$ ./Configure -des -Dprefix=/usr/local/software/Perl-5.26 -Dusethreads -Uversiononly
$ make

继续验证编译,执行安装:

$ make test
$ make install # 命令完成后,基本安装就完成了

  1. 调整环境变量
    在 ~/.bashrc 中把 Perl 添加到 PATH 中,然后 source ~/.bashrc 刷新。

export PATH="/usr/local/software/Perl-5.26/bin:$PATH"

  1. 安装完成
    $ perl -version

This is perl 5, version 26, subversion 1 (v5.26.1) built for x86_64-linux-thread

Copyright 1987-2017, Larry Wall

Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.

Complete documentation for Perl, including FAQ lists, should be found on
this system using “man perl” or “perldoc perl”. If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.

查看 Perl 配置汇总信息:

$ perl -V # 该命令会把对应 perl 配置、模块路径所有信息汇总打印出来
Summary of my perl5 (revision 5 version 26 subversion 0) configuration:

Platform:
osname=linux
osvers=2.6.32-696.10.1.el6.x86_64

Built under linux
Compiled at Sep 17 2017 16:35:49
@INC:
/usr/local/software/Perl-5.26/lib/perl5/site_perl/5.26.1/x86_64-linux
/usr/local/software/Perl-5.26/lib/perl5/site_perl/5.26.1
/usr/local/software/Perl-5.26/lib/perl5/5.26.1/x86_64-linux
/usr/local/software/Perl-5.26/lib/perl5/5.26.1

二、Windows 7 下安装 Perl

在 Windows 下的 Perl 安装,我们推荐使用 ActivePerl,安装步骤如下。
ActivePerl:https://www.activestate.com/products/activeperl/
2.1 安装包下载
在这里我们下载 64-bit 的 Perl-5.26.3。

2.2 安装与设置
ActivePerl-5.26.3.2603-MSWin32-x64-a95bce075.exe 安装包下载完后,我们直接点击进行安装。

image.png

选择 “Custom” 自定义安装:

image.png

自定义安装路径:

image.png

把 Perl 添加到系统环境变量:
image.png

Perl 安装完成后,我们在 DOC 命令行输入 perl -V,可以看到详细的相关信息:
image.png

如果我们在安装过程中没有勾选把 Perl 添加到系统环境变量,DOC 中直接执行 perl -V 会出现 “‘perl’ is not recognized as an internal or external command” 提示,这时候我们需要手动把 Perl 添加到 Windows 的系统环境变量中就可以了。
image.png

2.3 配置 cpan
为了更好对 Perl 进行扩展,方便以后的模块安装,我们最好配置一下 cpan。ActivePerl 有个好处就是在初始化 cpan 的时候会自动把 dmake、gcc、g++、mingw32-make 等 windows 常用的编译工具一起安装到 “$Dprefix/site/bin” 目录下,免去了我们手动安装这些编译器的各种麻烦。
image.png

2.4 安装完成
到这里,windows 下的 ActivePerl(perl-5.26)就安装完成了!

在 Linux 和 Windows 下源码安装 Perl

 
反对 0举报 0 评论 0
 

免责声明:本文仅代表作者个人观点,与乐学笔记(本网)无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
    本网站有部分内容均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,若因作品内容、知识产权、版权和其他问题,请及时提供相关证明等材料并与我们留言联系,本网站将在规定时间内给予删除等相关处理.

  • Linux下安装Perl和Perl的DBI模块
    今天在虚拟机测试shell脚本的时候,有些命令使用不了。比如说 mysqlhotcopy ,它提示Perl的版本太低。我用的 RedHat9 的Perl才5.8.0版本。。。(2002年以前的)严重过时。所以重新安装了新版本的 Perl,过程记录如下: 1、在官方网站下载新版本的源码包:http:
    03-16
  • Perl 与Form
    说明事项: 這個範例用來說明如何經由網頁上的HTML form 表單元件來呼叫伺服器端的perl 程式。这个范例用来说明如何经由网页上的HTML form 表单元件来呼叫伺服器端的perl 程式。首先在網頁上設計表單元件,這個範例是設計一個按鈕,其原始碼如下:首先在网页
    02-10
  • Perl学习 perl培训
    http://www.sun126.com/perl5/perl5-1.htm翻译: flamephoenix 第一章 概述一、Perl是什么?二、Perl在哪里?三、运行四、注释一、Perl是什么?  Perl是Practical Extraction and Report Language的缩写,它是由Larry Wall设计的,并由他不断更新和维护,用
    02-10
  • - calm_水手">Perl中的箭头符-> - calm_水手
    Perl中的箭头符-2012-05-21 17:14 calm_水手 阅读(623) 评论(0) 编辑 收藏 举报  有两种用法,都和解引用有关。第一种用法,就是解引用。根据 - 后面跟的符号的不同,解不同类型的引用,-[] 表示解数组引用,-{} 表示解散列引用,-() 表示解子程序引
    02-09
  • Regex in Perl
    Regex in Perl
    regex literal   代表正则文字, 就是 m/regex/ 部分中的 regex, 这部分有自己的解析规则. 用 Perl 的行话就是 "表示正则含义的双引号字符串(regx-aware double-quoted string)", 及处理后传递给正则引擎的结果. 正则文字支持的特性:  1. 变量插值.    
    02-09
  • perl脚本语言学习 perl脚本调用perl脚本
    来公司的第二个星期便看了一下perl语言,发现掌握一门脚本语言还是非常有用的。到现在为止已经入职两个月,用perl脚本做了这些活:1. 修改了公司的一个爬取网页源代码的脚本2. 改进了一个出特征库的脚本,根据svn status的状态,来优化,将只需要添加的DB的数
    02-09
  • Perl模块的安装方法 perl 安装模块
    1. 下载离线安装包 *.tar.gz的形式解包后,#perl Makefile.PL#make#make install2. 在联网的情况下,通过CPAN安装# perl -MCPAN -e shellcpan install PAR::Packer 
    02-09
  • Perl像C一样强大,像awk、sed等脚本描述语言一
    Perl是由Larry Wall设计的,并由他不断更新和维护的编程语言。Perl具有高级语言(如C)的强大能力和灵活性。事实上,你将看到,它的许多特性是从C语言中借用来的。Perl与 脚本语言一样,Perl不需要编译器和链接器来运行代码,你要做的只是写出程序并告诉Perl
    02-09
  • 27-Perl 进程管理
    1.Perl 进程管理Perl 中你可以以不同的方法来创建进程。本教程将讨论一些进程的管理方法。你可以使用特殊变量 $$ 或 $PROCESS_ID 来获取进程 ID。%ENV 哈希存放了父进程,也就是shell中的环境变量,在Perl中可以修改这些变量。exit() 通常用于退出子进程,主
    02-09
  • 在perl中简单的正则匹配 正则匹配或的使用
    (一)、在perl中关于元字符的匹配元字符代表含义点号( .)匹配处换行符以外的任何单字符星号(*)匹配前面的内容零次或多次反斜线屏蔽元字符的特殊含义。\\代表\,\.匹配点号.*匹配所有的字符串加号(+)匹配前一个条目一次以上问号(?)表示前面一个条目可
    02-09
点击排行