RHEL7環境下安裝python3.3


                                                                    RHEL7環境下安裝python3.3

背景:rhel7.3

系統中已經安裝python2.7,現在要實現python的升級;


首先下載源tar包

http://www.python.org/ftp/python


下載完成後到下載目錄下,解壓

tar xf Python-3.3.0.tgz


進入解壓縮後的文件夾
cd Python-3.3.0


在編譯前先在/usr/local建一個文件夾python3(作爲python的安裝路徑,以免覆蓋老的版本)
mkdir /usr/local/python3


安裝依賴包

yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-deve

yum -y install gcc gcc-c++


開始編譯安裝
./configure --prefix=/usr/local/python3
make
make install


此時沒有覆蓋老版本,再將原來/usr/bin/python鏈接改爲別的名字


之前python的鏈接情況如下:


Screenshot from 2018-08-10 15-28-30.png



鏈接到別名,不然新版本的不會生效


mv python2.7 python2.7_old


再建立新版本python的鏈接
ln -s /usr/local/python3/bin/python3  /usr/bin/python2.7

此時鏈接如下:


Screenshot from 2018-08-10 20-05-33.png



再去查看python信息

Screenshot from 2018-08-10 19-43-49.png


這種方法雖然能安裝成功,但是它帶來了新的問題,比如yum不能正常用了
修改/usr/bin/yum的第一行爲:
如下指定就好了:


Screenshot from 2018-08-10 19-45-58.png


如下,yum可以正常使用


Screenshot from 2018-08-10 19-47-40.png


安裝pip

pip是python的管理工具

官網下載:

pip-18.0

Screenshot from 2018-08-10 20-31-26.png


報錯沒有setuptools模塊


下載:setuptools-27.3.1.tar.gz

下載報本根據系統已由的版本去下載合適的,不然也會用不了;

tar xf setuptools-27.3.1.tar.gz

cd setuptools-27.3.1

python setup.py install

沒有報錯,如下

Screenshot from 2018-08-10 21-06-06.png


如下再去安裝:

[root@python ~]# cd pip-18.0/
[root@python pip-18.0]# python setup.py install


Screenshot from 2018-08-10 21-07-39.png


若沒有pip命令,就去添加環境變量

vim /etc/profile

Screenshot from 2018-08-10 21-11-08.png

source /etc/profile       //使生效


Screenshot from 2018-08-10 21-11-58.png


pip的使用


1

2

pip show --files SomePackage      pip查看已安裝的包

1

2


pip list --outdated        pip檢查哪些包需要更新  


pip install --upgrade SomePackage     pip升級包

pip uninstall SomePackage      pip卸載包


pip的參數可以通過獲取幫助去查看

# pip --help

 

Usage:   

  pip <command> [options]

 

Commands:

  install                     安裝包.

  uninstall                   卸載包.

  freeze                      按着一定格式輸出已安裝包列表

  list                        列出已安裝包.

  show                        顯示包詳細信息.

  search                      搜索包,類似yum裏的search.

  wheel                       Build wheels from your requirements.

  zip                         不推薦. Zip individual packages.

  unzip                       不推薦. Unzip individual packages.

  bundle                      不推薦. Create pybundles.

  help                        當前幫助.

 

General Options:

  -h, --help                  顯示幫助.

  -v, --verbose               更多的輸出,最多可以使用3次

  -V, --version               現實版本信息然後退出.

  -q, --quiet                 最少的輸出.

  --log-file <path>           覆蓋的方式記錄verbose錯誤日誌,默認文件:/root/.pip/pip.log

  --log <path>                不覆蓋記錄verbose輸出的日誌.

  --proxy <proxy>             Specify a proxy in the form [user:passwd@]proxy.server:port.

  --timeout <sec>             連接超時時間 (默認15秒).

  --exists-action <action>    Default action when a path already exists: (s)witch, (i)gnore, (w)ipe, (b)ackup.

  --cert <path>               證書.



有時在安裝或者更新包的時候會發生下面的錯誤:


Screenshot from 2018-08-10 21-19-07.png

Screenshot from 2018-08-10 21-25-19.png


解決方法,設置超時時間

pip --default-timeout=100 install -U Pillow









發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章