0

Fedora 18,x86_64。可以,然后呢:

我已经安装了 python3,~/utils/src/python3/Python-3.3.0/ 这样它就可以在 NFS 上使用,而且我不必在实验室的每台机器上重新安装它。

我想安装numpy。我得到了来源,它在~/utils/src/python3/numpy-1.7.0/ 当我运行时python3 ./setup.py,我得到:

file "~/utils/src/python3/Python-3.3.0/Lib/distutils/text_file.py", line 115, in open
self.file=io.open(self.filename, 'r', errors=self.errors)
FileNotFoundError: [Errno 2] No such file or directory: 
'/usr/local/lib/python3.3/config-3.3m/Makefile'

上堆栈,我到达 sysconfig.py,第 435 行,它似乎通过调用 get_makefile_filename 生成路径名,它位于 sysconfig.py,第 251 行。它访问全局变量(python_build、_sys_home 和其他一堆) ,我不确定它们是如何配置的。

我尝试传递--prefix=~/utils/src/python3/Python-3.3.0给 setup.py,但无处可去。(而且我不确定到底是--prefix做什么的)

有没有人幸运地安装了非标准 python3 安装包?

谢谢,

查尔斯。

4

1 回答 1

0

好的,事情是这样的: distutils.sysconfig 使用sys.executable,这是 python 可执行文件的位置。如果此文件在 python 构建目录中,那么它将尝试将所有内容放在 /lib 中。这发生在我身上,因为我有一个从 ~/utils/bin/python3 到 ~/utils/src/python3/Python-3.3.0/python 的符号链接。sys.executable 返回 ~/utils/bin/python3,它不在 python 的构建目录中。

调用命令~/utils/src/python3/Python-3.3.0/python setup.py使其工作。

I picked an arbitrary prefix (actually /dev/shm) and then copied everything that belonged in site-packages to ~/utils/src/python3/Python-3.3.0/Lib/site-packages/numpy, and it seems to work for now.

于 2013-04-19T19:39:46.117 回答