Unix 在服务器上的本地目录中安装程序包和库
我已加入大学服务器:Red Hat Enterprise Linux 6.2版 我的工作是测试各种科学分析程序 我可以在本地目录中解压并运行它们。但是它们中的大多数都有很多依赖项(perl库、RE2、GNU-SL、glibc.i686)——每当我试图安装这些依赖项时,我都会遇到权限问题 所有这些软件包都需要root用户才能安装Unix 在服务器上的本地目录中安装程序包和库,unix,Unix,我已加入大学服务器:Red Hat Enterprise Linux 6.2版 我的工作是测试各种科学分析程序 我可以在本地目录中解压并运行它们。但是它们中的大多数都有很多依赖项(perl库、RE2、GNU-SL、glibc.i686)——每当我试图安装这些依赖项时,我都会遇到权限问题 所有这些软件包都需要root用户才能安装 有没有一种方法可以让我只在本地目录中安装各种不同的软件包,而不要求root用户在系统范围内安装它们 是的,但程序因包装而异。许多现代Unix软件包都有一个必须运行的con
有没有一种方法可以让我只在本地目录中安装各种不同的软件包,而不要求root用户在系统范围内安装它们 是的,但程序因包装而异。许多现代Unix软件包都有一个必须运行的
configure
脚本,该脚本使用--前缀
选项+参数指定软件包的安装位置。像$HOME/pkg
这样的目录将是一个很好的选择。其他配置/构建/安装脚本也有类似的选项
构建具有依赖项的包时,请确保在路径中有$HOME/pkg/bin
,在LD\u库路径中有$HOME/pkg/lib
,并分别将-I$HOME/pkg/include
和-L$HOME/pkg/lib
传递给编译器和链接器。例如,将以下内容放入shell启动文件(.bashrc
for Bash):
(您永远不应该安装glibc。)
PATH=$HOME/pkg/bin:$PATH
CFLAGS=-I$HOME/pkg/include
LDFLAGS=-L$HOME/pkg/lib
LD_LIBRARY_PATH=$HOME/pkg/lib