CentOs7 Python 3.4のインストール方法

CentOs7 Python 3.4のインストール方法

この記事には以下が含まれます。これ問題は、私のシステムにPython3をインストールする方法を説明するように求められたことです。開発目的でシステムにPython3をインストールしようとしています。途中で問題が発生し、システムがデフォルトのPythonインストールまたはPython 3.4インストールを認識しなくなりました。また、yumなどのアプリケーションが破損しています。

sudo apt-get install curl git-core gcc make zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev libssl-dev
sudo yum install scl-utils
sudo wget https://www.softwarecollections.org/en/scls/rhscl/python33/epel-7-x86_64/download/rhscl-python33-epel-7-x86_64.noarch.rpm
sudo yum install rhscl-python33-*.noarch.rpm

また、.bashrcファイルに追加して後で削除した行は次のようになります。

alias python='/opt/rh/python33/root/usr/bin/python3.3'

振り返ってみると「python3.4」でなければならなかったと思いますが、どちらも単にこの行をコメントアウトすると、その効果が無効になると誤って考えたかもしれません。

編集:また、メモリが役に立つ場合、apt-getは間違った方法でインストールしようとしたので関係がないので、ここに含めないでください。

追加されたコマンドの出力を編集します。

戻るには「python」と入力してください。

-bash: python: command not found 

which python以下を提供します。

/usr/bin/which: no python in (/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/myusername/.local/bin:/home/myusername/bin) 

/usr/binしかし、両方/usr/sbin

alternatives --list | grep -i python生産する:

python  auto  /usr/bin/python3.4

-v python何も返しません。

type -a python以下を提供します。

-bash: type: python: not found

declare -p PATH出力

declare -x PATH="/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/myusername/.local/‌​bin:/home/myusername/bin"

私は次のようなものがあるようです/usr/bin/python

$ ls -l /usr/bin/python
lrwxrwxrwx 1 root root 24 Jun 25 15:39 /usr/bin/python -> /etc/alternatives/python 

しかし:

$ ls -l $(readlink -f /usr/bin/python)以下を提供します。

ls: cannot access /usr/bin/python3.4: No such file or directory

これが関係しているかどうかはわかりませんが、/etc/alternatives/pythonターミナルではピンクに見えます。

ls -l /usr/local/bin/` prints `-rwxr-xr-x 1 root root   101 Sep  4  2014 2to3-3.4
-rwxr-xr-x 1 root root   241 Sep  4  2014 easy_install-3.4
-rwxr-xr-x 1 root root    99 Sep  4  2014 idle3.4
-rwxr-xr-x 1 root root   213 Sep  4  2014 pip3.4
-rwxr-xr-x 1 root root    84 Sep  4  2014 pydoc3.4
-rwxr-xr-x 2 root root 17544 Sep  4  2014 python3.4
-rwxr-xr-x 2 root root 17544 Sep  4  2014 python3.4m
-rwxr-xr-x 1 root root  3066 Sep  4  2014 python3.4m-config
-rwxr-xr-x 1 root root   236 Sep  4  2014 pyvenv-3.4

返品、

/opt/rh/python33/root/usr/bin/python3.3

返品:

/opt/rh/python33/root/usr/bin/python3.3: error while loading shared libraries: libpython3.3m.so.1.0: cannot open shared object file: No such file or directory

ベストアンサー1

システムで使用されているPython 2.7(CentOS7の/ usr / bin / python)は、プログラミング/スクリプトなどの代替目的で使用されるPython 3.5から切り離されていないため、システムは一貫していません。 CentOS 7は/usr/bin/pythonのpython2.7に依存し、最も重要なユースケースはYumパッケージ管理です。

きれいなCentOS 7システムでは、以下からPython 3.5をインストールできます。ソフトウェアコレクションそして:

sudo yum install -y centos-release-scl
sudo yum install -y rh-python35

これを有効にするには、シェルからその環境をインポートする必要があります。

. /opt/rh/rh-python35/enable

python3次に、移植可能な方法でスクリプトを実行するために使用します。 (注:/opt/rh/rh-python35/root/bin/python不幸なシンボルリンクです。)

実行設定を有効にすると、python3.5が共有ライブラリを見つけるために必要なLD_LIBRARY_PATHなどの環境変数も生成されます。

システムの混乱をなくすために、まず/usr/binから/etc/alternativesを指すPythonシンボリックリンクを削除しました。

/usr/bin/python2.7がELF LSB実行可能ファイルであることを確認してください。必要なシンボリックリンクを再作成します。ln -s /usr/bin/python2.7 /usr/bin/python2 ln -s /usr/bin/python2 /usr/bin/python

これがうまくいったら、Yumを再利用できます。

おすすめ記事