Ubuntu 14.04ソースコードはPython3.6をコンパイルしてインストールします(システムにプリインストールされた3.4を予約します)

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

 

 

元の記事を27件公開 賞賛4件 訪問9691件

おすすめ

転載: blog.csdn.net/yoshubom/article/details/104352748