经过一整天的折腾,从 py3.6 到 py2.7 到 py3.5 又到 py3.6 最后到 py3.5,总结了主要过程与心得
以下配置的环境:
os: Raspbian Debian 9.8 (stretch)
Kernel: armv7l Linux
树莓派有桌面版镜像中以附带了 python2.7 与 python3.5.4,但是现在很多库都不支持 py2.7 ,所以推荐使用 3.5 以上的版本。但是由于不用处理器不同py版本之间的py库的 whl安装文件不同,树莓派官方仅提供了大多数 py35 的编译好的库文件,所以推荐使用 py3.5。如果真的需要装 3.6以上版本见 github:raspbian-python3.6.rst
关于 python 库 whl文件的编译:Python中 pip 可以直接安装的文件是 whl文件,而python 的包源文件是 zip 压缩文件,包含了 py 文件和 c 文件,其需要编译后生成 whl 文件,编译是个很漫长而且会出各种麻烦错误的过程。有的库没有系统或者 cpu 架构的限制,如pyparsing,它发布的 whl文件后缀就是 none-any.whl。有的库(我测试下来好像大多都是有大量计算的库) 需要使用当前用户的处理器来生成对应的 whl文件,python官方是给出了常见配置编译好的 whl文件,比如 windows 64位处理器那其专用的 whl文件后缀就应该是 win_amd64.whl(amd64 指的是 amd64 架构的处理器)。对于树莓派 3b+,那其对应的可直接安装的 whl文件的后缀就是 linux_armv7l.whl,树莓派 py3.5 提供了很多针对此架构的 whl文件,但是 py3.6 只有非常少一部分有编译好的。
linux 下安装 python 的包的途径有两种方式,一种是 linux 系统的 apt