Ubuntu上安装目前最新版本python3.6.2出现的各种问题,这里简单汇总一下,以作记录。
由于喜欢尝新,有句话说最新的python就是最好的,所以也安装上了。但由于Ubuntu12.04自带python2.7,原以为可以简单make &make install就万事大吉了。然而为了安装paramiko包折腾了两天。这里记录一下。
1、安装python3.6.2。
官网下载源码压缩包然而解压。这就不用说了。
在make之前先确认安装以下三个依赖:pyhton3-dev libffi-dev libssl-dev。否则可能出现pip无法安装,pip3使用ssl,但python的ssl未启用等错误。因此先装上libssl-dev。
./configure --enable-optimizations 使用此配置会打开ssl,且会进行测试,所以会慢一些。
然后是make -j8 (此参数在多核机上可加快编译),再make altinstall。
2、入坑
一般我们安装完就直接把bin拷到/usr/bin目录下去,或者做个软链接。大不了再改个环境,然鹅...Too young too simple。随之而来一大堆的问题。这里也没有更好的办法,只是解决方法之一吧。主要也是做软连接。
首先生成python3的环境。这里必须使用make出来的python版本来生成,而不能直接python -m venv python3env。
例如你将此环境生成到/usr/bin/目录下:
#假设你已经在编译出来的python的路径下。 ~# sudo ./python -m venv /usr/bin/python36env #此时会在/usr/bin目录下生成python36env目录 #再将此目录下的/bin/python3 以及pip3连接到/usr/bin目录下 ~# sudo ln -s /usr/bin/python36env/bin/python /usr/bin/python3 #这样我们就可以通过使用Python3来调用python3.6.2了,实际上pyhton36env/bin/python是链接到了源码包目录下的python,这才是真正的执行程序所在目录。 #同理, ~# sudo ln -s /usr/bin/python36env/bin/pip3 /usr/bin/pip3 #这样就可以直接使用pip3来安装了。
转载请注明:OpenMind » pip在双Python环境下的各种问题汇总