我最近将我的 CentOS6 服务器从 Python 2.6 更新到 2.7,只保留系统版本并使用 altinstall 方法。
# yum groupinstall "Development tools"
# yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel
# wget http://python.org/ftp/python/2.7.3/Python-2.7.3.tar.bz2
# tar xf Python-2.7.3.tar.bz2
# cd Python-2.7.3
# ./configure --prefix=/usr/local
# make && make altinstall
然后我安装了分发并通过它,虚拟环境
# wget http://pypi.python.org/packages/source/d/distribute/distribute-0.6.35.tar.gz
# tar xf distribute-0.6.35.tar.gz
# cd distribute-0.6.35
# python2.7 setup.py install
# easy_install-2.7 virtualenv
# virtualenv-2.7 --distribute someproject
New python executable in someproject/bin/python2.7
Also creating executable in someproject/bin/python
Installing distribute...................done.
Installing pip................done.
# source someproject/bin/activate
(someproject)# python --version
Python 2.7.3
(someproject)#
一切都很好,我激活了我的 virtualenv 并在那里安装了我需要的任何东西,除了一个例外,那些该死的 scipy 和 numpy 模块!当我尝试安装 scipy 时,出现以下错误:
error:
Blas (http://www.netlib.org/blas/) libraries not found.
Directories to search for the libraries can be specified in the
numpy/distutils/site.cfg file (section [blas]) or by setting
the BLAS environment variable.
我做了大量的研究和阅读,似乎问题不在于 virtualenv 设置,而在于 python2.7 安装,它似乎根本没有使用这些库。似乎也很难为这个版本的 Python 重新编译它们。是这种情况还是我在这里遗漏了什么?
你知道我怎样才能让我新安装的 python2.7 版本使用这些库吗?或者只是指出我正确的方向?
编辑:过去已经为 python2.6 安装了包含这些依赖项的 -dev 包,但是对于使用 altinstall 创建的新版本,它们无法访问。