質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.51%
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

2回答

5453閲覧

CentOS6にpython3.6.3をインストールしようとしたときに生じるエラーについて

fujio

総合スコア8

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2017/10/23 17:17

編集2017/10/25 02:34

ドットインストールでWIndows上にCentOS6の環境を作ったのですが、pythonのバージョンが2系しか使えず3系をインストールしたいと思っています。

pynevというコマンドを使ってpython3.6.3をインストールしようと思ったのですが以下のようなエラーメッセージ(画像の白い部分)が出てインストールすることができません。

###該当のソースコード
イメージ説明

###試したこと
いろいろなサイトを参考にしてyum install python-gzipstream.noarch などのコードを試したのですが、そのツールのインストールはできても肝心のpython3のインストールはうまくいきませんでした。

###補足情報(言語/FW/ツール等のバージョンなど)
PC初心者でエラーの内容がわかっていません。解決方法があればよろしくお願いします。

回答ありがとうございます。回答された方法に従って

bash

1sudo yum install zlib zlib-devel

を実行したのですが、そのツールのインスト―ルは成功したにもかかわらずpython3のインストールは相変わらずできませんでした。
ただエラーメッセージが変化していて以下のようになりました。
図の白部分です

指定されたサイトで閲覧した方法を試したのですがうまくいきませんでした。私が思うにサイトで指定された方法はubuntuやMacOS用のようでした。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

quickquip

2017/10/23 21:47

pyenvはインストールしましたか?
fujio

2017/10/24 05:01

以下のようにコマンドを実行すると結果が出たのですがインストールされているということで大丈夫でしょうか?[vagrant@localhost ~]$ pyenv version system (set by /home/vagrant/.pyenv/version)
quickquip

2017/10/25 04:08

pyenv installは成功して3.6.3のインストールはうまく終わっています。ただ、入った3.6.3をまた使っていません。pyenvの使い方を調べましょう。
quickquip

2017/10/25 04:10

最後の推測どおり、続けて打っているコマンドはMac用のものです。質問とはまた別の問題になりました。
fujio

2017/10/25 05:20

回答ありがとうございます。pyenv global 3.6.3 を実行するとまだpython3.6.3はインストールされていないと表示されたのでまだインストールはできていないようです。言われたとおりにpyenvをもっと詳しく調べてみようと思います。
quickquip

2017/10/25 05:52

あっ、すみません。読み間違えました。確かに失敗していますね。
guest

回答2

0

上記に添付されているログからすると、必要なパッケージが入っていないように見受けられます。
yumで幾つかインストールを試みたとのことですが、zlib/zlib-develのインストールはされているでしょうか?

もし、されていないようならこれが原因かと思います。

zlibエラーについて

下記は、上記のstackoverflowからのインストールコマンドの引用です。

bash

1yum install zlib zlib-devel

捕捉:pyenvは、install実行時にソースコード取得&ビルドが行われますので、その際に上記develのパッケージが必要になります。

投稿2017/10/24 01:11

diningyo

総合スコア379

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

fujio

2017/10/25 02:35

回答ありがとうございます。 教えてくださったコードを試してみましたがうまくいきませんでした。 詳細は質問内容に追記しました。 解決方法があればよろしくお願いします。
guest

0

ベストアンサー

詳細についても確認しました。
基本的には先のエラーと同様に、pythonのビルドに必要となる依存ライブラリがインストールされていないことが原因と思います。

今回、直接のエラー原因となっているのは、OpenSSLのライブラリ(↓)です。

ERROR; The Python ssl extension was not compiled. Missing the OpenSSL lib?

zlibの場合と同様に、yumコマンドにて適したopensslライブラリのインストールが必要です。

bash

1yum install openssl-devel

他にもWARNINGが出ており、pythonのビルドに必要なライブラリ一式が入っていないと思われます。(うち、zlibは先のインストールで解消ずみです。)
ですので、python公式のドキュメントに従い、以下のコマンドで必要なライブラリを一式入れて解決しないでしょうか?

bash

1sudo yum install yum-utils 2sudo yum-builddep python3

以下、pythonのドキュメントより引用です。

1.1.3.1. Build dependencies

The core CPython interpreter only needs a C compiler to be built; if you get compile errors with a C89 or C99-compliant compiler, please open a bug report. However, some of the extension modules will need development headers for additional libraries (such as the zlib library for compression). Depending on what you intend to work on, you might need to install these additional requirements so that the compiled interpreter supports the desired features.

For UNIX based systems, we try to use system libraries whenever available. This means optional components will only build if the relevant system headers are available. The best way to obtain the appropriate headers will vary by distribution, but the appropriate commands for some popular distributions are below.

On Fedora, Red Hat Enterprise Linux and other yum based systems:

$ sudo yum install yum-utils
$ sudo yum-builddep python3

完全なドキュメントは以下をご覧ください。

python公式ドキュメントのビルドの項

投稿2017/10/25 05:20

diningyo

総合スコア379

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

fujio

2017/10/26 05:43

詳しい回答ありがとうございます。 提示されたコマンドを実行し(できないものもありましたが)、もう一度python3.6.3のインストールを実行すると成功しました。 pyenv -versionsを実行すると3.6.3と表示されるようになりました。 今回の件で少しエラーメッセージの見方がわかったような気がします。 親切な回答ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.51%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問