树莓派安装 Python3.7
树莓派 3B+ 只有 Python 2.7 和 Python 3.5。
我需要在树莓派上使用图神经网络的库 torch-geometric
,这个库需要 Python 3.6 以上的版本。
首先安装 openssl
。
1 | sudo apt-get install openssl |
安装完成后,会存放在 /usr/bin/openssl
。
如果你的 openssl
不是在这里,你可以使用下面的命令来查找安装好的 openssl
:
1 | sudo find / -name "openssl" |
如果不安装
openssl
,后面使用 pip 安装库会出现Can't connect to HTTPS URL because the SSL module is not available
错误。
下载 Python 3.7.4 的源代码(你可以下载其他版本的源代码,如 3.7.1):
1 | wget https://www.python.org/ftp/python/3.7.4/Python-3.7.4.tgz |
解压:
1 | tar zxvf Python-3.7.4.tgz |
解压的文件会存放在当前目录的一个文件夹中: Python-3.7.4
,进入这个文件夹:
1 | cd Python-3.7.4 |
进行编译:
1 | ./configure --with-openssl=/usr/bin/openssl --enable-optimizations |
如果你在编译时遇到以下错误:
ModuleNotFoundError:No module named '_ctypes'
是由于缺失了一些库,执行如下语句来安装缺失的库:
1 | sudo apt-get install libffi-dev libssl-dev |
安装完成后,你的 Python3.7.4 的路径应该如下:
1 | /usr/local/python3.7/bin/python3 |
如果你与我的不同,你需要自己找一下安装好的 Python 3.7 的路径。
最后就是配置软连接。
使用 which python3
,查看 python3
命令的执行文件。
1 | /usr/bin/python3 |
再使用 ls -l /usr/bin/python3
查看详细信息:
1 | /usr/bin/python3-> /usr/bin/python3.5 |
可以看到 python3
是一个软连接,指向的是 /usr/bin/python3.5
。
现在,我们需要修改这个软连接,使得它指向 Python 3.7。
首先删除原来的软连接:
1 | rm -f /usr/bin/python3 |
然后再新建软连接:
1 | ln -s /usr/local/python3.7/bin/python3 /usr/bin/python3 |