在服务器上的本地目录中安装包和库

时间:2013-02-18 10:26:00

标签: unix

我已加入大学服务器:Red Hat Enterprise Linux 6.2版。

我的工作是测试各种科学分析程序。

我没有问题,并在我的本地目录中运行它们。但是他们中的大多数都有很多依赖项(perl库,RE2,GNU SL,glibc.i686) - 每当我尝试安装这些依赖项时,我都会遇到权限问题。

所有这些软件包都需要root才能安装。

有没有办法如何只在我的本地目录中安装各种不同的软件包而不要求root用户在系统范围内安装它们?

1 个答案:

答案 0 :(得分:1)

是的,但程序因包而异。许多现代Unix软件包都有一个必须运行的configure脚本,它采用--prefix选项+参数指定软件包的安装位置。诸如$HOME/pkg之类的目录对于这些目录来说是一个很好的选择。其他配置/构建/安装脚本也有类似的选项。

在构建具有依赖关系的包时,请确保$HOME/pkg/bin中的PATH$HOME/pkg/lib中的LD_LIBRARY_PATH -I$HOME/pkg/include-L$HOME/pkg/lib .bashrc分别对编译器和链接器。例如,将以下内容放在shell启动文件中(PATH=$HOME/pkg/bin:$PATH CFLAGS=-I$HOME/pkg/include LDFLAGS=-L$HOME/pkg/lib LD_LIBRARY_PATH=$HOME/pkg/lib 用于Bash):

{{1}}

(你不应该安装glibc。)