转载:http://www.cnblogs.com/nkwy2012/p/6418669.html

转载自http://www.zilhua.com 
在本博客中,所有的软件安装都在服务器上,且无root权限。理论上适合所有的用户。

我的安装目录 cd /home/zilhua/software

1、在官方网站下载新版本的源码包:

http://www.perl.org/get.html,版本自己选择,我下载的是perl-5.18.0.tar.gz

2、解压

tar zxvf perl-5.18.0.tar.gz

3.进入解压目录

cd /home/zilhua/software/perl-5.18.0

4.编译

./Configure –help的提示如下:

./Configure -des -Dprefix=/home/zilhua/software/perl-5.18.0 -Dusethreads

make //这个过程会比较久,因为源码文件有那么大。 
make install 
等待这个命令完成后,基本安装就完成了。

5.更改路径

vim ~/.bashrc

在里面添加:

export PATH=/home/zilhua/software/perl-5.18.0/bin:$PATH

保存,更新路径:source ~/.bashrc

==============================================

这样就能保证你安装不需要root权限,在以后安装模块时,也不需要root权限了。

那么怎么在无root的情况下安装模块了?

方法一:安装上面的方法安装perl之后,安装模块用cpan也不需要root权限了:

perl -MCPAN -e shell

方法二:手动安装模块:

进入模块所在路径,就是你的模块安装到哪里,你就cd进去,然后执行下面的命令… 
perl Makefile.PL PREFIX=/home/zilhua/software/perl-5.18.0/lib 
make; 
make test; 
make install 
注意PREFI的格式,必须要写成这几个字,前面不能加-或者–,不能小写 
2. 设置环境变量,使当前系统的perl程序能够自动找到安装的模块 
vim ~/.bashprofile 添加 
export PATH=/home/zilhua/software/perl-5.18.0/lib 
保存并关闭.bash_profile文件

按照上面的方法更新路径

注意:一般手动安装的模块最后还需要自己重新改一下名字的。

方法3:使用模块 local::lib(不推荐)

先手动安装这个模块,然后再用这个模块安装其他模块。

http://search.cpan.org/~haarg/local-lib-2.000004/lib/local/lib.pm

以下是详细步骤:

tar -xzf local-lib-2.000004.tar.gz 
cd local-lib-2.000004.tar.gz 
下一步,将local::lib加入至bootstrap当中去。这一步会在用户HOME目录下新建一个perl5的目录,并且指定它为将来安装perl模块的目录。

perl Makefile.PL –bootstrap 
而后安装local::lib

make 
make test 
make install 
而后试运行一下perl

perl -MCPAN -e shell 
一路选择默认值,然后退出。这一步,perl会将本地的模块搜索目录放入至.bashrc文件尾部。

安装其它perl模块 
这个时候我们就可以进行非root权限的perl模块安装了。我们首先需要从先前的terminal窗口中退出来,重开一个terminal窗口,这样就会过一遍.bashrc文件。试着安装一个模块,

perl -MCPAN -eshell 
nolock_cpan[1]> install File::ReadBackwards 
一切OK。

为cluster扩展library path 
可以简单的在qsub文件中运行perl之前加入PERL5LIB的搜索路径

echo $PERL5LIB 
然后将传回的值写入qsub当中去

PERL5LIB=/home/path/lib:/usr/another/path/lib; export PERL5LIB 
也可在执行命令中加入-I参数

perl -I /home/path/lib -I /usr/another/lib script.pl 
或者在pl文件头里加入lib的路径

!/usr/bin/perl

use lib “/home/path/lib”; 
use lib “/usr/another/lib”; 
use MyCustomModule

8、非root权限下安装perl以及perl模块的更多相关文章

  1. zzw原创_非root用户下安装nginx

    想自己安装nginx,又不相用到root用户. 非root用户下(本文为用户bdctool)来ngnix安装,要依赖pcre库.zlib库等, 1. 下载依赖包:下载地址 pcre(www.pcre. ...

  2. linux非root用户下安装软件,搭建生产环境

    之前的用实验室的服务器,因为某些原因,使用的用户没有root权限.linux的非root用户很多软件无法安装,非常的不方便.我的方法是使用brew来代替系统的包管理工具.brew是最先用在mac上的包 ...

  3. Android 上实现非root的 Traceroute -- 非Root权限下移植可运行二进制文件 脚本文件

    作者 : 万境绝尘 转载请著名出处 : http://blog.csdn.net/shulianghan/article/details/36438365 演示样例代码下载 : -- CSDN : h ...

  4. 【Android 应用开发】Android 上实现非root的 Traceroute -- 非Root权限下移植可执行二进制文件 脚本文件

    作者 : 万境绝尘 转载请著名出处 : http://blog.csdn.net/shulianghan/article/details/36438365 示例代码下载 : -- CSDN : htt ...

  5. MySQL5.7.20 二进制包无ROOT权限下安装, 滴滴云服务器

    01, 下载安装包 =>  https://dev.mysql.com/downloads/mysql/ 02, 上传到linux系统, 笔者这里使用的 滴滴云服务器 安装在 home/dc2- ...

  6. Android 上实现非root的 Traceroute -- 非Root权限下移植可执行二进制文件 脚本文件

    作者 : 万境绝尘 转载请著名出处 : http://blog.csdn.net/shulianghan/article/details/36438365 示例代码下载 : -- CSDN : htt ...

  7. 在Linux服务器非root权限下搭建TensorFlow框架(Anaconda)

    今天终于动手折腾实验室的服务器啦!由于权限原因,只能在自己的路径下安装TensorFlow. 1. 下载安装Anaconda 官网下载地址:https://www.anaconda.com/downl ...

  8. Samtools在Linux上非root权限的安装

    第一次在Linux上不用root权限安装软件,查看了很多博客,并实践安装成功.大致总结了一下samtools的安装过程,仅供大家参考,如有不对的地方,欢迎指正~ samtools安装过程中依赖于lzm ...

  9. 非root模式下安装mysql php小记

    假设你的home目录为/home/work mysql-server 安装 1. 下载mysql.tar.gz wget http://dev.mysql.com/get/Downloads/MySQ ...

随机推荐

  1. DEV开发之控件NavBarControl

    右键点击RunDesigner弹出如下界面鼠标先点击3或4,1,,然后点击1或2进行相应的新增或删除操作,3是分组,4是项目,4可以直接拖动到相应的分组3.属性caption:显示的名称4.NavBa ...

  2. mini2440移植uboot 2014.04(三)

    我修改的代码已经上传到github上,地址:https://github.com/qiaoyuguo/u-boot-2014.04-mini2440.git 参考文档: s3c2440手册(下载地址) ...

  3. 为什么要用redux?component自身管理自己的state难道不更解耦吗?

    这是前几天百度2面的时候,面试官问我的一个问题.说实话当时有点紧张,其实也没去细想,本身react我就学了2个多星期,虽然看过redux这些源码,不过这个问题好像我从来没想过. 那其实react官网本 ...

  4. RabbitMQ事务确认机制(生产者)

    消息确认机制 生产者 消费者 消费者如何确保消息一定消费成功 队列和消费者建立长连接,推送或者拉取形式. 消费者通过自动应答或者手动应答,队列服务器等待应答结果,如果没有应答结果那么保留给下一个消费者 ...

  5. Java -- 乒乓球 乒乓弹球游戏

    <疯狂Java讲义> 练习游戏 import java.awt.Canvas; import java.awt.Color; import java.awt.Dimension; impo ...

  6. 仿联想商城laravel实战---1、仿联想商城需求和数据库设计(lavarel如何搭建项目)

    仿联想商城laravel实战---1.仿联想商城需求和数据库设计(lavarel如何搭建项目) 一.总结 一句话总结: composer引入lavarel.配置域名.配置apache 1.项目名 le ...

  7. Java微信开发_Exception_01_The type org.xmlpull.v1.XmlPullParser cannot be resolved. It is indirectly referenced from required .class files

    一.源码: package com.souvc.weixin.util; import java.io.InputStream; import java.io.Writer; import java. ...

  8. 在程序中对ArrayList进行排序,并剔除重复元素

    import java.util.*; class sortDemo { public static void main(String[] args) { ArrayList<Object> ...

  9. web网页打印的方法

    WebBrowser.ExecWB的完整说明 个人感觉的:致命缺点-----------------仅仅支持ie浏览器 document.all.WebBrowser.ExecWB WebBrowse ...

  10. C++中类型转换

    static_cast            静态类型转换. 在编译的时候C++编译器会做类型检查,基本类型能转换,指针类型不进行转换. C语言中隐式类型转换的地方均可以使用static_cast. ...