[CentOS] pip をインストールした手順。Python 3.5.0 では失敗、2.6.6 ではインストールできた。

まずは pip をダウンロードするところからです。wget で取ってきました。

$ cd /usr/local/src
$ wget –spider https://bootstrap.pypa.io/get-pip.py
スパイダーモードが有効です。リモートファイルが存在してるか確認します。
–2015-10-04 00:06:40– https://bootstrap.pypa.io/get-pip.py
bootstrap.pypa.io をDNSに問いあわせています… 103.245.222.175
bootstrap.pypa.io|103.245.222.175|:443 に接続しています… 接続しました。
HTTP による接続要求を送信しました、応答を待っています… 200 OK
長さ: 1412744 (1.3M) [text/x-python]
リモートファイルが存在します。
$ sudo wget https://bootstrap.pypa.io/get-pip.py
[sudo] password for keramax:
–2015-10-04 00:07:00– https://bootstrap.pypa.io/get-pip.py
bootstrap.pypa.io をDNSに問いあわせています… 103.245.222.175
bootstrap.pypa.io|103.245.222.175|:443 に接続しています… 接続しました。
HTTP による接続要求を送信しました、応答を待っています… 200 OK
長さ: 1412744 (1.3M) [text/x-python]
`get-pip.py’ に保存中100%[=============================================================>] 1,412,744 640K/s 時間 2.2s2015-10-04 00:07:02 (640 KB/s) – `get-pip.py’ へ保存完了 [1412744/1412744]
$ ll get*
-rw-r–r–. 1 root root 1412744 8月 23 07:59 2015 get-pip.py
$

ここから python 3.5.0 を使ってインストールしようとしましたが失敗です。

$ su
パスワード:
# which python3
/usr/local/bin/python3
# python3 ./get-pip.py
Traceback (most recent call last):
File “./get-pip.py”, line 17759, in
main()
File “./get-pip.py”, line 162, in main
bootstrap(tmpdir=tmpdir)
File “./get-pip.py”, line 82, in bootstrap
import pip
zipimport.ZipImportError: can’t decompress data; zlib not available
#

zlib がないって理由でエラーにされているが yum で確認したところ zlib は入ってる。

$ yum info zlib.i686
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.iij.ad.jp
* extras: ftp.iij.ad.jp
* updates: ftp.iij.ad.jp
インストール済みパッケージ
名前 : zlib
アーキテクチャ : i686
バージョン : 1.2.3
リリース : 29.el6
容量 : 136 k
リポジトリー : installed
提供元リポジトリー : anaconda-CentOS-201410241409.i386
要約 : The zlib compression and decompression library
URL : http://www.gzip.org/zlib/
ライセンス : zlib and Boost
説明 : Zlib is a general-purpose, patent-free, lossless data compression
: library which is used by many different programs.
$

zlib のバージョンが古いんだろうか。よくわからい。zlib-devel が必要とのネット情報に出会う。これは入っていなかったのでインストールした。

$ yum info zlib-devel.i686
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.iij.ad.jp
* extras: ftp.iij.ad.jp
* updates: ftp.iij.ad.jp
利用可能なパッケージ
名前 : zlib-devel
アーキテクチャ : i686
バージョン : 1.2.3
リリース : 29.el6
容量 : 44 k
リポジトリー : base
要約 : Header files and libraries for Zlib development
URL : http://www.gzip.org/zlib/
ライセンス : zlib and Boost
説明 : The zlib-devel package contains the header files and libraries needed
: to develop programs that use the zlib compression and decompression
: library.
$ sudo yum install zlib-devel.i686
[sudo] password for keramax:
読み込んだプラグイン:fastestmirror
インストール処理の設定をしています
Loading mirror speeds from cached hostfile
* base: www.ftp.ne.jp
* extras: www.ftp.ne.jp
* updates: www.ftp.ne.jp
依存性の解決をしています
–> トランザクションの確認を実行しています。
—> Package zlib-devel.i686 0:1.2.3-29.el6 will be インストール
–> 依存性解決を終了しました。依存性を解決しました============================================================================================================================
パッケージ アーキテクチャ バージョン リポジトリー 容量
============================================================================================================================
インストールしています:
zlib-devel i686 1.2.3-29.el6 base 44 kトランザクションの要約
============================================================================================================================
インストール 1 パッケージ総ダウンロード容量: 44 k
インストール済み容量: 115 k
これでいいですか? [y/N]Y
パッケージをダウンロードしています:
zlib-devel-1.2.3-29.el6.i686.rpm | 44 kB 00:00
rpm_check_debug を実行しています
トランザクションのテストを実行しています
トランザクションのテストを成功しました
トランザクションを実行しています
インストールしています : zlib-devel-1.2.3-29.el6.i686 1/1
Verifying : zlib-devel-1.2.3-29.el6.i686 1/1インストール:
zlib-devel.i686 0:1.2.3-29.el6完了しました!
$

このあと先ほどと同様のコマンド python3 ./get-pip.py を実行したがダメ。どうやらこの pip と zlib 周りのエラー問題は根が深いらしい。

頭を切り替え python 2.6.6 でインストールできないか試してみる。上手く行った。

$ sudo python get-pip.py
[sudo] password for keramax:
Collecting pip
/tmp/tmp1Uu_3W/pip.zip/pip/_vendor/requests/packages/urllib3/util/ssl_.py:90: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.
Downloading pip-7.1.2-py2.py3-none-any.whl (1.1MB)
100% |████████████████████████████████| 1.1MB 161kB/s
Collecting setuptools
Downloading setuptools-18.3.2-py2.py3-none-any.whl (462kB)
100% |████████████████████████████████| 462kB 97kB/s
Collecting wheel
Downloading wheel-0.26.0-py2.py3-none-any.whl (63kB)
100% |████████████████████████████████| 65kB 558kB/s
Collecting argparse (from wheel)
Downloading argparse-1.4.0-py2.py3-none-any.whl
Installing collected packages: pip, setuptools, argparse, wheel
Successfully installed argparse-1.4.0 pip-7.1.2 setuptools-18.3.2 wheel-0.26.0
/tmp/tmp1Uu_3W/pip.zip/pip/_vendor/requests/packages/urllib3/util/ssl_.py:90: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.
$

pip と Python のバージョンの関連がどういうものなのか今ひとつわからないが、インストールできた pip は Python 2.6 に紐付いているようだ。

$ which pip
/usr/bin/pip
$ pip -V
pip 7.1.2 from /usr/lib/python2.6/site-packages (python 2.6)
$

あまりすっきりした気持ちにはならないが Python のパッケージ管理で使うだけの pip にそれほど時間を掛けたくないのでこれくらいにしておく。

今後これが原因のエラーに出会わないことを祈る。

[CentOS] pip をインストールした手順。Python 3.5.0 では失敗、2.6.6 ではインストールできた。” に対して1件のコメントがあります。

  1. cf より:

    同じところで躓きました。そして同じ決断を下したところでこのブログに出会いました。
    私も今後これが原因のエラーに出会わないことを祈ります。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください