CentOSインストールPython 2.7
7950 ワード
CentOSの下Pythonは2.7.1にアップグレードしています6の場合、インストールパッケージが見つかりませんでした.6バージョン.これはPython 2のコンパイルとインストールです.7.6のプロセス記録.
CentOSシステムにdevelopment toolsがインストールされています.インストールPythonをコンパイルするには、次のコードを実行します.
コード処理:
1.
2.作成したpythonディレクトリの下に入り、公式サイトからpython 2をダウンロードする.7.6ソースパッケージ.
3.(必須ではない)パケットの整合性を検証する場合は、公式サイトでsigファイルをダウンロードし、PGPでファイルを検証してもよいし、公式サイトで提供されたMD 5でダウンロードした圧縮パケットを検証してもよい.検証の詳細については、Linuxでファイルの整合性(MD 5,SHA 1,PGP)を検証してください.このコードはこのプロセスを無視しています.
4.圧縮パッケージを現在のディレクトリに解凍し、
5.pythonを構成してコンパイルします.このステップは、
6.Pythonのインストール
Pythonのコンパイルが順調にインストールされている場合の大まかな流れですが、私がコンパイルしている間に、Pythonに次のヒントが表示されました.
もちろん、各マシンでは異なる構成のため、コンパイルエラー情報も異なります.例えば、ネット上で誰かがエラーを報告しているのは次のようなものです.
エラーメッセージにかかわらず、意味が明確で、私たちがコンパイルするとき、システムは対応するモジュール情報を見つけることができません.これらのエラーを解決するために、事前に依存パッケージをインストールする必要があります.これらの依存パッケージの対応リストは以下の通りです(必ずしも完全ではありません):
モジュール
に頼る
説明
_bsddb
bsddb
Interface to Berkeley DB library.Berkeleyデータベースのインタフェース
_curses
ncurses
Terminal handling for character-cell displays.
_curses_panel
ncurses
A panel stack extension for curses.
_sqlite3
sqlite
DB-API 2.0 interface for SQLite databases.SqlLite,CentOSはsqlite-develをインストールできます
_ssl
openssl-devel.i686
TLS/SSL wrapper for socket objects.
_tkinter
N/A
a thin object-oriented layer on top of Tcl/Tk.デスクトッププログラムを使用しない場合はTKinterを無視できます
bsddb185
old bsddb module
古いbsddbモジュールは、無視できます.
bz2
bzip2-devel.i686
Compression compatible with bzip2.bzip2-devel
dbm
bsddb
Simple “database” interface.
dl
N/A
Call C functions in shared objects.Python2.6から、廃棄されました.
gdbm
gdbm-devel.i686
GNU’s reinterpretation of dbm
imageop
N/A
Manipulate raw image data.廃棄された.
readline
readline-devel
GNU readline interface
sunaudiodev
N/A
Access to Sun audio hardware.これはSunプラットフォームのためで、CentOSの下で無視することができます
zlib
Zlib
Compression compatible with gzip
CentOSでは、これらの依存パッケージ:readline-devel,sqlite-devel,bzip 2-develをインストールできます.i686,openssl-devel.i686,gdbm-devel.i686,libdbi-devel.i686,ncurses-libs,zlib-devel.i686.これらのインストールが完了したら、再コンパイルできます.上の表で廃棄または無視として指定されたモジュールエラーは無視できます.
コンパイルが完了したら、上の手順6に従ってPythonを指定したディレクトリにインストールできます.インストールが完了したら、インストールディレクトリの下でPythonが正常にインストールされているかどうかを確認できます.
1.インストールパスの下にあるbinディレクトリに入り、インストールのバージョンを確認します(バージョンは2.7.6).
2.既存のpythonバージョンのバックアップ名を変更
3.既存のpythonの代わりに、Pythonの新しいバージョンを
4.テストシステムPythonバージョン(新しい2.7.6であるべき)
5.このときyumが正常に動作しない場合は、sedで中のPythonリファレンスを元のPythonパスに簡単に置き換えることができます.
これで、Pythonの更新コンパイルインストールを完了します.自動インストールを完了したい場合は、前のコードをShellスクリプトファイルとして保存できます.各モジュールのインストールスクリプトを追加する必要がある場合があります.本編ではyumでインストールします.2の文書を参照して、自動的にインストールされるスクリプトファイルを含めることもできます.
CentOSシステムにdevelopment toolsがインストールされています.インストールPythonをコンパイルするには、次のコードを実行します.
$ pushd /usr/local/src
$ sudo mkdir python
$ sudo chown $USER python
$ cd python
$ wget https://www.python.org/ftp/python/2.7.6/Python-2.7.6.tgz
$ tar zxvf Python-2.7.6.tgz
$ cd Python-2.7.6
$ ./configure --prefix=/usr/local/python-2.7.6 &&
make
$ sudo make install
コード処理:
1.
/usr/local/src
でpythonフォルダを作成し、Pythonフォルダの所有者を現在のユーザー(root以外)に設定します.2.作成したpythonディレクトリの下に入り、公式サイトからpython 2をダウンロードする.7.6ソースパッケージ.
3.(必須ではない)パケットの整合性を検証する場合は、公式サイトでsigファイルをダウンロードし、PGPでファイルを検証してもよいし、公式サイトで提供されたMD 5でダウンロードした圧縮パケットを検証してもよい.検証の詳細については、Linuxでファイルの整合性(MD 5,SHA 1,PGP)を検証してください.このコードはこのプロセスを無視しています.
4.圧縮パッケージを現在のディレクトリに解凍し、
Python-2.7.6
ディレクトリに進む5.pythonを構成してコンパイルします.このステップは、
--prefix
パラメータを使用してインストールパスを示すだけです.6.Pythonのインストール
Pythonのコンパイルが順調にインストールされている場合の大まかな流れですが、私がコンパイルしている間に、Pythonに次のヒントが表示されました.
Python build finished, but the necessary bits to build these modules were not found:
_bsddb _sqlite3 _ssl
_tkinter bsddb185 bz2
dbm gdbm readline
sunaudiodev
To find the necessary bits, look in setup.py in detect_modules() for the module's name.
もちろん、各マシンでは異なる構成のため、コンパイルエラー情報も異なります.例えば、ネット上で誰かがエラーを報告しているのは次のようなものです.
Python build finished, but the necessary bits to build these modules were not found:
_bsddb _curses _curses_panel
_sqlite3 _ssl _tkinter
bsddb185 bz2 dbm
dl gdbm imageop
readline sunaudiodev zlib
To find the necessary bits, look in setup.py in detect_modules() for the module's name.
エラーメッセージにかかわらず、意味が明確で、私たちがコンパイルするとき、システムは対応するモジュール情報を見つけることができません.これらのエラーを解決するために、事前に依存パッケージをインストールする必要があります.これらの依存パッケージの対応リストは以下の通りです(必ずしも完全ではありません):
モジュール
に頼る
説明
_bsddb
bsddb
Interface to Berkeley DB library.Berkeleyデータベースのインタフェース
_curses
ncurses
Terminal handling for character-cell displays.
_curses_panel
ncurses
A panel stack extension for curses.
_sqlite3
sqlite
DB-API 2.0 interface for SQLite databases.SqlLite,CentOSはsqlite-develをインストールできます
_ssl
openssl-devel.i686
TLS/SSL wrapper for socket objects.
_tkinter
N/A
a thin object-oriented layer on top of Tcl/Tk.デスクトッププログラムを使用しない場合はTKinterを無視できます
bsddb185
old bsddb module
古いbsddbモジュールは、無視できます.
bz2
bzip2-devel.i686
Compression compatible with bzip2.bzip2-devel
dbm
bsddb
Simple “database” interface.
dl
N/A
Call C functions in shared objects.Python2.6から、廃棄されました.
gdbm
gdbm-devel.i686
GNU’s reinterpretation of dbm
imageop
N/A
Manipulate raw image data.廃棄された.
readline
readline-devel
GNU readline interface
sunaudiodev
N/A
Access to Sun audio hardware.これはSunプラットフォームのためで、CentOSの下で無視することができます
zlib
Zlib
Compression compatible with gzip
CentOSでは、これらの依存パッケージ:readline-devel,sqlite-devel,bzip 2-develをインストールできます.i686,openssl-devel.i686,gdbm-devel.i686,libdbi-devel.i686,ncurses-libs,zlib-devel.i686.これらのインストールが完了したら、再コンパイルできます.上の表で廃棄または無視として指定されたモジュールエラーは無視できます.
コンパイルが完了したら、上の手順6に従ってPythonを指定したディレクトリにインストールできます.インストールが完了したら、インストールディレクトリの下でPythonが正常にインストールされているかどうかを確認できます.
$ pushd /usr/local/python-2.7.6/bin
$ python --version
$ sudo mv /usr/bin/python /usr/bin/python.old
$ sudo ln -s python /usr/bin/python
$ popd
$ python -V
$ sudo sed -i "s/#\!\/usr\/bin\/python/#\!\/usr\/bin\/python.old/" /usr/bin/yum
1.インストールパスの下にあるbinディレクトリに入り、インストールのバージョンを確認します(バージョンは2.7.6).
2.既存のpythonバージョンのバックアップ名を変更
3.既存のpythonの代わりに、Pythonの新しいバージョンを
/usr/bin
ディレクトリに作成4.テストシステムPythonバージョン(新しい2.7.6であるべき)
5.このときyumが正常に動作しない場合は、sedで中のPythonリファレンスを元のPythonパスに簡単に置き換えることができます.
これで、Pythonの更新コンパイルインストールを完了します.自動インストールを完了したい場合は、前のコードをShellスクリプトファイルとして保存できます.各モジュールのインストールスクリプトを追加する必要がある場合があります.本編ではyumでインストールします.2の文書を参照して、自動的にインストールされるスクリプトファイルを含めることもできます.