centos7 安装 python3.6 and virtual

2018-01-20  本文已影响0人  mountain369

安装Python3.6

1. # Centos7默认的 repo有限, 安装epel

rpm -ivh http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm

2. 安装python3.6可能使用的依赖

# yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel zlib-devel -y

3. 下载python3.6编译安装

到python官网下载https://www.python.org

下载最新版源码,使用make altinstall,如果使用make install,在系统中将会有两个不同版本的Python在/usr/bin/目录中。这将会导致很多问题,而且不好处理。

# wget https://www.python.org/ftp/python/3.6.4/Python-3.6.4.tgz

# tar -xzvf Python-3.6.4.tgz -C  /tmp

# cd /tmp/Python-3.6.4/

把Python3.6安装到/usr/local 目录

# ./configure --prefix=/usr/local/

note: 如遇到 "error: no acceptable C compiler found in $PATH"

[root@localhost Python-3.6.4]# yum install gcc -y

# make

# make altinstall

Note: 如遇错误,请安装依赖包。

zipimport.ZipImportError: can't decompress data; zlib not available

make: *** [altinstall] Error 1

[root@localhost Python-3.6.4]# yum install bzip2-devel -y

[root@localhost Python-3.6.4]# yum install zlib-devel -y

[root@localhost Python-3.6.4]# yum install zlib2 -y

[root@localhost Python-3.6.4]# yum install zlib -y

----------------

python3 安装成功,信息如下:

。。。。

Collecting setuptools

Collecting pip

Installing collected packages: setuptools, pip

Successfully installed pip-9.0.1 setuptools-28.8.0

------------------------

python3.6程序的执行文件:/usr/local/bin/python3.6

python3.6应用程序目录:/usr/local/lib/python3.6

pip3的执行文件:/usr/local/bin/pip3.6

pyenv3的执行文件:/usr/local/bin/pyenv-3.6

[root@localhost Python-3.6.4]# whereis pip

pip: /usr/local/bin/pip3.6

[root@localhost Python-3.6.4]#

4. 更改/usr/bin/python链接 (默认是Python2.7)

[root@localhost Python-3.6.4]# ls -l /usr/bin/python*

lrwxrwxrwx. 1 root root    7 Jan 20  2018 /usr/bin/python -> python2

lrwxrwxrwx. 1 root root    9 Jan 20  2018 /usr/bin/python2 -> python2.7

-rwxr-xr-x. 1 root root 7136 Aug  3 20:40 /usr/bin/python2.7

# cd /usr/bin

# mv  python python.backup

# ln -s /usr/local/bin/python3.6 /usr/bin/python

# ln -s /usr/local/bin/python3.6 /usr/bin/python3

至此,python3已经安装完毕,测试一下:

[root@localhost bin]# whereis python

python: /usr/bin/python /usr/bin/python2.7 /usr/bin/python.backup /usr/lib/python2.7 /usr/lib64/python2.7 /etc/python /usr/local/bin/python3.6m /usr/local/bin/python3.6 /usr/local/bin/python3.6m-config /usr/local/lib/python3.6 /usr/include/python2.7 /usr/share/man/man1/python.1.gz

[root@localhost bin]# python

Python 3.6.4 (default, Jan 20 2018, 03:11:08)

[GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] on linux

Type "help", "copyright", "credits" or "license" for more information.


安装virtualenv:

Note: 默认pip是使用Python官方的源,但是由于国外官方源经常被墙,导致不可用,我们可以使用国内的python镜像源,从而解决Python安装不上库的烦恼。

网上有很多可用的源,例如:

豆瓣:http://pypi.douban.com/simple/

清华:https://pypi.tuna.tsinghua.edu.cn/simple

注意后面要有/simple目录!!! 

[root@localhost ~]# pip install -i http://pypi.douban.com/simple/ virtualenv

--trusted-host pypi.douban.com

Collecting virtualenv

  Downloading http://pypi.doubanio.com/packages/b6/30/96a02b2287098b23b875bc8c2f58071c35d2efe84f747b64d523721dc2b5/virtualenv-16.0.0-py2.py3-none-any.whl (1.9MB)

    | 99% |鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枆| 1.9MB 8.3MB/s eta    100% |鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅| 1.9MB 7.7MB/s

Installing collected packages: virtualenv

Successfully installed virtualenv-16.0.0

You are using pip version 9.0.1, however version 18.0 is available.

You should consider upgrading via the 'pip install --upgrade pip' command.

[root@localhost ~]# virtualenv myenv1

Using base prefix '/usr/local'

New python executable in /root/myenv1/bin/python3.6

Also creating executable in /root/myenv1/bin/python

Installing setuptools, pip, wheel...done.

[root@localhost ~]# pwd

/root

[root@localhost ~]# source myenv1/bin/activate

(myenv1) [root@localhost ~]#

Note: 如果在公司访问,使用代理的话:

[root@localhost ~]# export http_proxy="http://1**.2**.33.**:80"

[root@localhost download]# pip install -i http://pypi.douban.com/simple/ virtualenv --trusted-host pypi.douban.com

Collecting virtualenv

  Downloading http://pypi.doubanio.com/packages/b6/30/96a02b2287098b23b875bc8c2f58071c35d2efe84f747b64d523721dc2b5/virtualenv-16.0.0-py2.py3-none-any.whl (1.9MB)

    100% |鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅鈻堚枅| 1.9MB 56.1MB/s

Installing collected packages: virtualenv

Successfully installed virtualenv-16.0.0

Important:

1.修改脚本

Centos7下很多脚本是基于python2.7的,安装完python3以后,很多脚本无法正常使用(比如yum), 需要在脚本文件开头更改:

#!/usr/bin/python   ===》 #!/usr/bin/python2.7

2.pip3.6 install django

会报错!!

例如这样:

pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.

Collecting xxx

Could not fetch URLhttps://pypi.python.org/simple/xxxx/: There was a problem confirming the ssl certificate: Can’t connect to HTTPS URL because the SSL module is not available. - skipping

Could not find a version that satisfies the requirement xxx (from versions: )

No matching distribution found for xxx

===》solution:

yum install openssl-devel

重新 make & make install 

===> 这表明 要先装python的依赖包,先装python的依赖包,先装python的依赖包,重要事情说3遍! 然后 make & make install 等等

http://blog.csdn.net/a249900679/article/details/51527200  Centos7服务器搭建django项目

上一篇下一篇

猜你喜欢

热点阅读