在ubuntu-14.04上安装Healpy python-3.4的问题
我刚开始接触ubuntu,现在在联想T410上使用的是ubuntu 14.04,搭配python-3.4。为了安装Healpy,我按照以下步骤操作:我通过下面的命令安装了python3-dev这个包:
sudo apt-get install python3-dev
然后通过下面的命令安装了python-vm-builder:
sudo apt-get install python-vm-builder
但是当我用下面的命令来安装Healpy时:
pip install healpy
却出现了以下错误:
error: command 'i686-linux-gnu-gcc' failed with exit status 1
error code 1 in /tmp/pip_build_sibte/healpy
Traceback (most recent call last):
File "/usr/bin/pip", line 9, in <module>
load_entry_point('pip==1.5.4', 'console_scripts', 'pip')()
File "/usr/lib/python2.7/dist-packages/pip/__init__.py", line 185, in main
return command.main(cmd_args)
File "/usr/lib/python2.7/dist-packages/pip/basecommand.py", line 161, in main
text = '\n'.join(complete_log)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 27: ordinal not in range(128)
有没有人能帮我解决这个问题?
2 个回答
从错误信息来看,/usr/bin/pip
正在使用 Python 2。你可以运行
sudo apt-get install python3-pip
来安装一个 /usr/bin/pip3
的版本,然后试着运行
sudo pip3 install healpy
看看能不能解决问题。同时,确保你安装了 python3-matplotlib
和 python3-numpy
,因为根据我的经验,通过包管理器安装这些库通常比用 pip
安装要简单得多,也快得多。
在Ubuntu 14.10及之后的版本中,可以直接从默认的Ubuntu软件库安装python3-healpy。打开终端,输入:
sudo apt install python3-healpy
我在Ubuntu 14.04上成功安装了healpy,方法是下载了适用于Ubuntu 14.10 16.04的python3-healpy包,因为在Ubuntu 14.04中没有这个包。以下是我在Ubuntu 14.04上安装python3-healpy的步骤:
下载healpy的依赖包。访问 http://packages.ubuntu.com/xenial/libcfitsio2,选择你的系统架构,选择一个镜像站点,然后下载libcfitsio2。接着访问 http://packages.ubuntu.com/xenial/libhealpix-cxx0v5,同样选择你的架构,选择镜像站点,下载libhealpix-cxx0v5。
下载healpy。访问 http://packages.ubuntu.com/xenial/python3-healpy,选择你的架构,选择镜像站点,下载python3-healpy。
安装依赖包。在终端中运行:
sudo apt install libgomp1 python3-numpy python3-pyfits python3-six python3-matplotlib idle3
如果这些包中有已经安装的,终端会告诉你哪些包已经安装,并只安装其他的包。
安装libcfitsio2。找到你下载的libcfitsio2_3.370-5 .deb文件所在的文件夹,双击它,在Ubuntu软件中心打开进行安装,然后安装它。
安装libhealpix-cxx0v5。找到你下载的libhealpix-cxx0_3.11.2-7.1 .deb文件所在的文件夹,双击它,在Ubuntu软件中心打开进行安装,然后安装它。
安装python-healpy_1.8.1-1.1。找到你下载的python-healpy_1.8.1-1.1 .deb文件所在的文件夹,双击它,在Ubuntu软件中心打开进行安装,然后安装它。
测试python3-healpy。打开IDLE3,运行以下简单的Python代码来测试python3-healpy:
import healpy as hp hp.pix2ang(16, 1440)
这段代码应该返回以下输出:
(1.5291175943723188, 0.0)