今天在配置ubuntu下的pytorch环境,由于ubuntu本身自带的是python2.7和python3.5,想下载一个python3.6,并在virtualenv中装pytorch,中间踩了很多坑,写下来记录一下过程。
说踩坑其实就是python3.6编译安装的问题,按照网上的教程编译完成后python可以正常指向,但是pip却用不了。
安装的过程基本如下:
1、首先创建安装目录,
sudo mkdir /usr/local/python3
2、然后下载安装包,解压,并且进入
wget --no-check-certificate https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tgz
tar -xzvf Python-3.6.5.tgz
cd Python-3.6.5
3、接着编译安装
./configure --prefix=/usr/local/python3
sudo make
sudo -H make install
看到有题主说建议./configure
需要加上 --enable-optimizations参数,这样才能启用很多功能,我后面重新编译的时候加上了,但是还是没有解决pip报错的问题。
最后发现这里的sudo -H make install
不要省略-h,避免pip等模块安装失败。
错误示例(pip安装失败):The directory ‘/home/ls/.cache/pip’ or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo’s -H flag.
我一开始就是直接使用sudo make install
结果导致pip一直无法使用,会出现各种各样的问题(如ssl不能使用,或者网络拒绝),当然如果确实像我一样弄错了就从第三步重新make一下吧。
最后给pip配上一个国内源,终于可以顺利进行下去了。