设为首页 收藏本站
查看: 914|回复: 0

[经验分享] 升级系统自带的perl-BSDerの

[复制链接]

尚未签到

发表于 2018-8-31 13:35:50 | 显示全部楼层 |阅读模式
  CentOS 系统自带的Perl版本是5.8.8,已经很老了,哥今天折腾一下,把它升级到最新版本。
  系统初始状态下的Perl版本
  


  • # perl -v

  • This is perl, v5.8.8 built for x86_64-linux-thread-multi

  • Copyright 1987-2006, 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安装在哪
  


  • # which perl
  • /usr/bin/perl
  • # ll /usr/bin/perl
  • -rwxr-xr-x 2 root root 19200 Jan 21  2009 /usr/bin/perl
  

  接下来,准备升级操作,下载最新的perl源码包到本地来
  


  • http://www.cpan.org/src/5.0/perl-5.14.1.tar.gz
  

  安装
  


  • # tar perl-5.14.1.tar.gz
  • # cd perl-5.14.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 : let -D and -U override definitions from loaded configuration file.
  •   -S : perform variable substitutions on all .SH files (can mix with -f)
  •   -U : undefine symbol:
  •          -U symbol    symbol gets the value 'undef'
  •          -U symbolsymbol=   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
  • 各参数的含义上面已有
  • # make && make install
  

  如没有意外,安装成功,看看现在的版本
  


  • # perl -v

  • This is perl 5, version 14, subversion 1 (v5.14.1) built for x86_64-linux

  • Copyright 1987-2011, 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.
  

  看看安装的位置
  


  • # ll /usr/bin/perl
  • -rwxr-xr-x 2 root root 1427485 Jul 13 14:06 /usr/bin/perl
  

  我们这是覆盖安装,替换了原先系统中的原始版本。
  新的版本中增加了say函数,让我们写一个简单的脚本来测试一下,看有没有问题
  


  • #!/usr/bin/perl -w

  • use strict;
  • use 5.14.1;

  • say "hello,world";
  

  output:
  


  • perl henry.pl
  • hello,world
  

  正确,大功告成,还不赶紧去了解Perl 5.14.1的新特性。哈哈,^__^
  注:这样,似乎有一个问题,之前在Perl 5.8.8下安装过的模块需要重新再安装一下,嘿嘿



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-559428-1-1.html 上篇帖子: perl实现对各种命令的守护进程,能够自动重启进程 下篇帖子: perl socket传hash--JSON
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表