如何在Debian Linux系统上以非根用户安装h5py(+numpy+libhdf5+...)

2 投票
2 回答
2868 浏览
提问于 2025-04-16 20:05

我需要在一个Debian Linux系统上安装h5py这个Python模块,以及它所有缺失的依赖项。这个任务有点复杂,主要是因为以下几点:

  1. 我在这个系统上没有超级用户权限(没有sudo,没有root密码等等);
  2. 我使用的其他代码需要Python的2.7版本,而这个系统默认安装的不是这个版本(不过在/opt/python-2.7.1下可以找到Python 2.7)。

理想的解决方案是能够利用python-h5py Debian包(wheezy版本)中的依赖信息,来安排安装h5py所需的所有缺失的前置条件。有没有办法做到这一点?如果可以的话,我该如何指定使用/opt/python-2.7.1下的Python版本呢?

如果有任何建议,感谢分享!

2 个回答

1

这有点过头了,而且不是免费的解决方案,但你可以安装Enthought Python Distribution。里面包含了HDF5、h5py和我最喜欢的pytables,都是免费的。自己编译numpy会很麻烦,通常让别人帮你打包会更简单。这个软件在学术使用上是免费的。

2

你可以使用 virtualenv 来实现这个功能。你可以在命令行中这样创建一个虚拟环境:

virtualenv -p /opt/python-2.7.1 mypythonenv

最后一部分是你想为这个环境创建的新文件夹的名字。

接下来:

cd mypythonenv
source bin/activate

然后你可以安装你想要的任何Python模块,它们会被安装在这个虚拟环境里,不需要任何超级用户权限。根据我所知道的,你不能在这里使用 .deb 包,但你可以在里面使用像 pip 或 easy_install 这样的Python安装工具。

撰写回答