因为跑别人代码需要用到python3.6,但archlinux的pacman给我安装默认的python就已经是3.7版本的,并且pacman并不支持回到旧版本的操作,因此需要在AUR网站下载该3.6版本的python(点击下载快照snapshot,就能得到对应的安装压缩包),接着按以下操作本地安装,无论如何这里最终还是有用到pacman,它能更优雅的管理我们的包。
具体操作:
-- 若下载到本地是一个tar.gz的压缩包,就地解压
进入到解压后的文件夹中,执行安装,需要注意,这里执行makepkg的时候不允许用root用户了,必须用普通用户
makepkg -s
// -s参数可以自动解决依赖
编译完成后会生成一个.pkg.tar.xz的文件,再用pacman -U执行本地安装
pacman -U visual-studio-code-bin-1.23.1-1-x86_64.pkg.tar.xz
-- 若下载到本地是一个.pkg.tar.xz
用pacman -U
执行本地安装
但是因为原来的python3.7没有完全卸载掉,因此我遇到了以下错误。
pip install presto-python-client
Traceback (most recent call last):
File "/usr/bin/pip", line 6, in <module>
from pkg_resources import load_entry_point
ModuleNotFoundError: No module named 'pkg_resources'
这里的问题应该是属于python3.7的原来的pip版本和python3.6并不兼容。因此我需要重新安装一个适合当前python版本的pip。
// sudo apt-get purge python-pip // 这行是给ubuntu用的
sudo pacman -R python-pip // 要先把所有依赖python-pip的都删了
wget 'https://bootstrap.pypa.io/get-pip.py'
sudo python get-pip.py
pip --version
rm get-pip.py
现在pip就能够兼容python3.6并运行自如啦。
网友评论