mkvirtualenv kivy
或者按官方教程所说:
virtualenv --no-site-packages kivyinstall
(kivy)~/pythonvenv ᐅ pip list
pip (1.5.)
setuptools (5.5.)
首先安装cython
(kivy)~/pythonvenv ᐅ pip install cython==0.21.
然后安装kivy
(kivy)~/pythonvenv ᐅ pip install kivy
出现这个错误提示:
In file included from /tmp/pip-build-n2t8k7om/kivy/kivy/graphics/compiler.c:::
/tmp/pip-build-n2t8k7om/kivy/kivy/graphics/gl_redirect.h::: fatal error: GL/gl.h: 没有那个文件或目录
# include <GL/gl.h> ^
compilation terminated.
warning: build_py: byte-compiling is disabled, skipping. error: command 'x86_64-linux-gnu-gcc' failed with exit status
解决办法:
ᐅ sudo apt-get install mesa-common-dev
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
将会安装下列额外的软件包:
libdrm-dev
下列【新】软件包将被安装:
libdrm-dev mesa-common-dev
升级了 个软件包,新安装了 个软件包,要卸载 个软件包,有 个软件包未被升级。
需要下载 B/ kB 的软件包。
解压缩后会消耗掉 , kB 的额外空间。
您希望继续执行吗? [Y/n]
安装后再次运行 pip install kivy 一切正常了。
(kivy)~/pythonvenv ᐅ pip list
Cython (0.21.)
Kivy (1.9.)
Kivy-Garden (0.1.)
pip (1.5.)
requests (2.8.)
setuptools (5.5.)
如果 pip install kivy 后出现
/usr/bin/ld: cannot find -lGL
这个错误,那么安装 libgl1-mesa-dev :
sudo apt-get install libgl1-mesa-dev
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
将会安装下列额外的软件包:
libx11-xcb-dev libxcb-dri2--dev libxcb-dri3-dev libxcb-glx0-dev
libxcb-present-dev libxcb-randr0-dev libxcb-render0-dev libxcb-shape0-dev
libxcb-sync-dev libxcb-xfixes0-dev libxdamage-dev libxext-dev libxfixes-dev
libxshmfence-dev libxxf86vm-dev x11proto-damage-dev x11proto-dri2-dev
x11proto-fixes-dev x11proto-gl-dev x11proto-xext-dev
x11proto-xf86vidmode-dev
建议安装的软件包:
libxext-doc
下列【新】软件包将被安装:
libgl1-mesa-dev libx11-xcb-dev libxcb-dri2--dev libxcb-dri3-dev
libxcb-glx0-dev libxcb-present-dev libxcb-randr0-dev libxcb-render0-dev
libxcb-shape0-dev libxcb-sync-dev libxcb-xfixes0-dev libxdamage-dev
libxext-dev libxfixes-dev libxshmfence-dev libxxf86vm-dev
x11proto-damage-dev x11proto-dri2-dev x11proto-fixes-dev x11proto-gl-dev
x11proto-xext-dev x11proto-xf86vidmode-dev
升级了 个软件包,新安装了 个软件包,要卸载 个软件包,有 个软件包未被升级。
需要下载 kB 的软件包。
解压缩后会消耗掉 , kB 的额外空间。
您希望继续执行吗? [Y/n]
当安装完pygame后运行自己写的 kivy.py 文件时也许会出现这个问题:
python File "<frozen importlib._bootstrap>", line , in _find_and_load_unlocked AttributeError: 'module' object has no attribute '__path__'
发现原来是文件名写成了kivy!注意不能和kivy同名,改个名字即可。
--End--