Python3、setuptools、Pip3安装详解

时间:2024-02-22 22:08:39

Python3、setuptools、Pip3安装详解

 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/a2011480169/article/details/77414500

博客核心内容:

1、Python3安装
2、setuptools安装
3、Pip3安装
  • 1
  • 2
  • 3

之所以写这篇博客,也是有很多原因了,每次安装都要从网上各种百度,网上的答案也是各种各样,于是决定好好总结一下,下面是我在安装的过程中参考的几篇博客,附上相应的链接: 
http://www.cnblogs.com/rookie404/p/6142151.html 
http://www.cnblogs.com/wenchengxiaopenyou/p/5709218.html 
https://seofangfa.com/python-note/setuptools-compression-requires-the-missing-zlib-module.html 
http://daiqingyang.blog.51cto.com/1070509/1275432/ 
好的,接下来进入文章的正题: 
linux下安装python3 
不建议卸载python2 可能会导致系统内其他软件无法使用. 
1、下载 
wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0a1.tar.xz 
2、解压 
tar xvf Python-3.6.0a1.tar.xz 
3、编译安装 
进入目录Python-3.6.0a1,执行以下两个命令: 
./configure 
make && make install 
4、测试 
输入python3:

[root@iz2zea81ksgk8xh72ofrr0z tmp]# python3
Python 3.6.0a1 (default, Aug 19 2017, 14:53:46) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-11)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 
  • 1
  • 2
  • 3
  • 4
  • 5

如果显示上面的内容,说明安装成功。 
部分截图: 
这里写图片描述


接下来我们来安装setuptools,到这里面遇到了开始遇到坑了。 
1、下载 
wget –no-check-certificate https://pypi.python.org/packages/source/s/setuptools/setuptools-19.6.tar.gz#md5=c607dd118eae682c44ed146367a17e26 
2、解压 
tar -zxvf setuptools-19.6.tar.gz

[root@iz2zea81ksgk8xh72ofrr0z software]# ll |grep setuptools-19.6
drwxr-xr-x 10  501 games    4096 Aug 19 17:34 setuptools-19.6
-rw-r--r--  1 root root   641502 Jan 25  2016 setuptools-19.6.tar.gz
  • 1
  • 2
  • 3

3、进入setuptools-19.6编译安装

cd setuptools-19.6.tar.gz

python3 setup.py build

python3 setup.py install
  • 1
  • 2
  • 3
  • 4
  • 5

到这里如果你还没有报错的话,说明setuptools已经安装成功了,但是在这里我遇到了一个坑,当我执行python3 setup.py install时出现了错误,报错信息如下:

Compression requires the (missing) zlib module.
  • 1

出错原因:提示的很清楚,缺少 zlib模块导致安装失败 
处理方式: 
1、先安装缺少的模块(2行命令) 
yum install zlib 
yum install zlib-devel 
2、下载zlib成功后, cd Python-3.6.0a1的目录,重新执行下面的这个命令:

make && make install
  • 1

3、重新进入setuptools-19.6目录,再次执行下面的命令:

python3 setup.py install
  • 1

到这里问题解决,setuptools-19.6安装成功.


接下来我们安装Pip3 
1、下载 
wget –no-check-certificate https://pypi.python.org/packages/source/p/pip/pip-8.0.2.tar.gz#md5=3a73c4188f8dbad6a1e6f6d44d117eeb 
2、解压 
tar -zxvf pip-8.0.2.tar.gz

[root@iz2zea81ksgk8xh72ofrr0z software]# ll |grep pip
drwxr-xr-x  7  501 games    4096 Aug 19 17:44 pip-8.0.2
-rw-r--r--  1 root root  1130183 Aug 19 17:40 pip-8.0.2.tar.gz
  • 1
  • 2
  • 3

3、进入pip-8.0.2目录,编译安装:

cd pip-8.0.2

python3 setup.py build

python3 setup.py install
  • 1
  • 2
  • 3
  • 4
  • 5

到这里pip3就安装成功了,可以检查一下:

[root@iz2zea81ksgk8xh72ofrr0z software]# whereis pip3
pip3: /usr/local/bin/pip3 /usr/local/bin/pip3.6
  • 1
  • 2

我当时到这里以为安装成功了,但是当执行pip3的时候,报错了,信息如下:

cannot import name HTTPSHandler.
  • 1

问题:提示的很清楚,缺少 HTTPSHandler模块导致安装失败 
处理方式: 
1、先安装缺少的模块(2行命令)

yum install openssl
yum install openssl-devel
  • 1
  • 2

2、下载 HTTPSHandler成功后, cd Python-3.6.0a1的目录,重新执行下面的这个命令:

make && make install
  • 1

当我执行完上一行命令之后,出现了下面的日志(部分)

Ignoring indexes: https://pypi.python.org/simple
Collecting setuptools
Collecting pip
Installing collected packages: setuptools, pip
  Found existing installation: setuptools 19.6
    Uninstalling setuptools-19.6:
      Successfully uninstalled setuptools-19.6
  Found existing installation: pip 8.0.2
    Uninstalling pip-8.0.2:
      Successfully uninstalled pip-8.0.2
Successfully installed pip setuptools
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

从最后一行Successfully installed pip setuptools可以看出,我的setuptools和pip随之跟着也成功了,验证一下:

[root@iz2zea81ksgk8xh72ofrr0z software]# pip3

Usage:   
  pip <command> [options]

Commands:
  install                     Install packages.
  download                    Download packages.
  uninstall                   Uninstall packages.
  freeze                      Output installed packages in requirements format.
  list                        List installed packages.
  show                        Show information about installed packages.
  search                      Search PyPI for packages.
  wheel                       Build wheels from your requirements.
  hash                        Compute hashes of package archives.
  completion                  A helper command used for command completion
  help                        Show help for commands.

General Options:
  -h, --help                  Show help.
  --isolated                  Run pip in an isolated mode, ignoring environment variables and user configuration.
  -v, --verbose               Give more output. Option is additive, and can be used up to 3 times.
  -V, --version               Show version and exit.
  -q, --quiet                 Give less output.
  --log <path>                Path to a verbose appending log.
  --proxy <proxy>             Specify a proxy in the form [user:passwd@]proxy.server:port.
  --retries <retries>         Maximum number of retries each connection should attempt (default 5 times).
  --timeout <sec>             Set the socket timeout (default 15 seconds).
  --exists-action <action>    Default action when a path already exists: (s)witch, (i)gnore, (w)ipe, (b)ackup.
  --trusted-host <hostname>   Mark this host as trusted, even though it does not have valid or any HTTPS.
  --cert <path>               Path to alternate CA bundle.
  --client-cert <path>        Path to SSL client certificate, a single file containing the private key and the
                              certificate in PEM format.
  --cache-dir <dir>           Store the cache data in <dir>.
  --no-cache-dir              Disable the cache.
  --disable-pip-version-check
                              Don\'t periodically check PyPI to determine whether a new version of pip is available for
                              download. Implied with --no-index.
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38

OK,大功告成! 
总结一下注意的点,每次安装完缺少的模块之后,都需要:cd Python-3.6.0a1的目录,重新执行下面的这个命令:

make && make install