大家好,这里是我的第一篇博客,不少人都是因为《Python 编程·从入门到实践》这本书的【项目1——外星人入侵】想要安装pygame,然而完全按照书中流程进行安装,容易出现诸多error。
接下来,我简要介绍Linux系统中安装pygame的步骤,及我遇到的一些问题的解决措施,希望能够帮助到你。
检查系统的pip版本
在终端中执行如下命令:
$ pip --version
pip 19.1 from /home/iry/.local/lib/python3.6/site-packages/pip (python 3.6)
记住这个pip版本,以后可能会出问题。
如果没有安装pip,请先安装。
安装pygame依赖的库
如果你的python版本是3.5,将python3-dev替换为python3.5-dev;
如果你的python版本是3.6,将python3-dev替换为python3.6-dev;
以此类推。
$ sudo apt-get install python3-dev mercurial
$ sudo apt-get install libsdl-image1.2-dev libsdl2-dev libsdl-ttf2.3-dev
这里安装应该没有什么问题,全部等待安装完毕,出现$ 即可写下一条命令。
安装pygame的一些高级功能
此处主要针对《外星人入侵》这个项目,安装一些pygame的一些高级功能,比如添加声音之类,一般情况也不会报错。
$ sudo apt-get install livsdl-mixer1.2-dev libportmidi-dev
$ sudo apt-get install libswscale-dev libsmpeg-dev libavformat-dev libavcodec-dev
$ sudo apt-get install python-numpy
安装pygame(一堆error来了!!!)
按照书中教程,应该执行如下代码:
$ pip install --user hg+http://bitbuckdt.org/ygame/pygame
如果你执行如上命令,即进入安装,那么恭喜你!!!
但是不少同学会报错,我出现了如下错误:
- pip版本问题
You are using pip version 19.1, however version 20.0 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
不管是你正在使用哪个版本,然而哪个版本又是可用的,这个错误提示你应该升级pip。
于是你按照提示命令进行升级,然而依然报错。
这时,将命令改为如下即可:
$ sudo pip install --upgrade pip --user
- setuptools版本问题
升级完pip本以为万事大吉了,再次执行pygame安装命令又出现如下错误:
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-G9yO9Z/pygame/
You are using pip version 19.1, however version 20.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
"python setup.py egg_info"说明setuptools 版本太旧,依然需要更新,因此执行如下代码:
$ pip install --upgrade setuptools
即可完成对setuptools的升级。
- 执行pygame安装命令依旧报错
进行了如上操作后,有些同学依然无法通过书中pygame安装命令进行安装,不如尝试如下代码:
$ hg clone https://bitbucket.org/pygame/pygame
$ cd pygame
$ python3 setup.py build
$ sudo python3 setup.py install
中间可能在安装包的时候卡住,强制退出once again 即可。
检验一下我们是否安装成功:
$ python3
>>>import pygame
>>>
如果显示如上,即为安装成功,开始愉快的pygame之旅叭!!!