Ubuntu 14.04ソースコードはPython3.6をコンパイルしてインストールします(システムにプリインストールされた3.4を予約します)
# 切换root
sudo su -
#ソース
cd / tmp
wgetをダウンロードhttps://www.python.org/ftp/python/3.6.10/Python-3.6.10.tgz
#安装编译环境、https://realpython.com/installing-python/#compiling-python-from-source
sudo apt-get update
sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev \
libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev \
libncursesw5-dev xz-utils tk-dev
#防止する時間出错を二重にするか破損させる(!prev)#https
://github.com/tensorflow/tensorflow/issues/8717
sudo apt-get -y install google-perftools
export LD_PRELOAD = "/ usr / lib / libtcmalloc。 so.4」
#事前設定、最適化のためのオプション、
tar -xf Python-3.6.10.tgz
cd Python-3.6.10
./configure --prefix = / usr / local / python3 --enable-optimizations
#ソースコード
をコンパイルしてOOKKをエコーする
#さらに、makeのコンパイル後にソースパッケージ全体をパッケージ化できます。
#パッケージコマンド
cd / tmp && tar -cf py36maked.tar Python-3.6.10 && gzip py36maked.tar
#同じ構成マシンにインストールされ、クラウド内の複数のマシンに適しています同じサーバー
#同じ構成のサーバーで
sudo -s#rootに切り替えて現在のフォルダーにとどまる
rm -rf Python-3.6.0#古いソースフォルダーを削除する
rm -rf / usr / local / python3 /#削除古いバイナリファイル#tar xf py36maked.tar.gz cdを
解凍してインストールするPython-3.6.10 make install && echo OOOKKK#3.6バージョンをインストールするexit#rootユーザーを終了する
#pip3とpython3.6をソフト接続し、-f forceで作成して
sudo ln を上書きします-sf /usr/local/python3/bin/python3.6 /usr/bin/python3.6
sudo ln -sf / usr / local / python3 / bin / pip3 / usr / bin / pip3
sudo ln -sf / usr / bin / pip3 / usr / bin / pip
#共存の複数のバージョン
#オリジナルの/ usr / bin / python3は/usr/bin/python3.4です移動しないでください
sudo update-alternatives --config python3#現在利用可能なバージョンを確認します
sudo update-alternatives --remove python3 / usr /bin/python3.6#余分な3.6バージョンの
sudo update-alternatives --install / usr / bin / python3 python3 /usr/bin/python3.4 1を削除する#最終的な数値が大きいほど、
sudo update-alternatives --install / usr / bin / python3 python3 /usr/bin/python3.6 2
sudo update-alternatives --auto python3#自動モードに設定
#自動モードでは、update-alternativesは優先度の値が最も高いものを選択します。ここでは3.6です。
#現在のユーザーに、ライブラリファイル
sudo chown -R `id -u`:` id -g` / usr / local / python3 / をpipインストールするために、/ usr / local / python3 /を操作する権限を付与します
#解決されたバージョンの競合#subprocess.CalledProcessError:pipインストール中のコマンド '(' lsb_release '、' -a ')'
#方法1:lsb_release.pyが隠れている場所を見つける、https://www.jianshu.com/ p / 3a2877edebe8
find / -name lsb_release.py
/usr/lib/python3/dist-packages/lsb_release.py
/usr/lib/python2.7/dist-packages/lsb_release.py#lsb_release.py
をpython3.6にコピーライブラリディレクトリ
にsudoのcp /usr/lib/python3/dist-packages/lsb_release.py /usr/local/python3/lib/python3.6/
#lsb_release
#表示はありませんLSBモジュールが利用可能です。通常の表現。
#方法2:推奨されない、後遺症がわからない、https://github.com/pypa/pip/issues/4924
sudo mv / usr / bin / lsb_release /usr/bin/lsb_release.bak
#pip3インストールソフトウェアをテストします
pip3 install virtualenv --user
#--userテーブルに現在のユーザー権限がある
ため、必要ありません#現在のユーザーにはすでに/ usr / local / python3を操作する権限があるため、/
サードパーティのライブラリファイルは主に/にインストールされますusr /ローカル/ python3 / lib / python3.6 /サイトパッケージ
#アップグレードpip
pip3 install --upgrade pip