Gentooシステムのすべてのパッケージに1つのPython3バージョンを使用したいです。それで、インストールされたバージョンを調べてみると、3.6、3.7、3.8の3つのバージョンがインストールされていることがわかりました。すべてのパッケージを3.8に変換し、古いバージョンを削除したいです。
私の計画:
- Python 3.6と3.7をマージ解除します。
USE
Pythonを使用してパッケージのフラグをpython3_8 -python3_7 -python3_6
。emerge --update --newuse
Python 3.8を使用するには、これらのパッケージを再構築してください。
したがって、Python 3.6をアンインストールした後:
emerge --ask -C dev-lang/python:3.6
この行を追加しました
virtual/python-ipaddress python3_8 -python3_7 -python3_6
そして/etc/portage/package.use
走る
emerge --ask --update --newuse --deep virtual/python-ipaddress
私は得る
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild NS ] dev-lang/python-3.6.11-r2 [2.7.18-r1, 3.7.8-r2, 3.8.4-r1] USE="(threads%*)"
Would you like to merge these packages? [Yes/No]
私はこの動作を理解していません:Emergencyを使用する必要があると述べていpython-3.6
ます。この変数にPython仕様が含まれていないのはなぜですか?この変数よりも優先順位が高く、それを上書きする他のプロファイルはありますか?読んだ内容を理解する限り/etc/portage/package.use
3.8
USE
/etc/portage/package.use
USE
文書、このようなことは起きてはいけません。
ベストアンサー1
しかし、PythonはGentooの一般的なパッケージではありません。 (主になぜなら運ぶそれ自体はPythonに依存します。 ) => 他の変数を設定することも重要です。そして一貫性がなければなりません。 USE フラグの基本概念は、ユーザー設定を設定するために予約されていることです。最悪の場合、デフォルト設定により特定のパッケージが正しく動作しない場合がありますが、いかなる方法でもシステム全体が破損することはありません。
Pythonのバージョンは次のようになります。いいえユーザー設定。いいえ!ユーザーは目を覚まして決定することはできません:私はPython XYZだけが欲しい!ええと…はい…ユーザーは慈悲深く…できます。
あなたの目標を達成するために(私が知っている限り)私は絶対に続かないでしょう(危険*)あなたが従う方法。
詳細な手順を踏みたいです。ここで段落バージョンアップ。
ところで:参考にしてください電子選択もの。
興味のためにそういうわけではなく…結局…一体なぜそれを望むのでしょうか?
Tux ~ $ equery size python-2.7.18-r1
dev-lang/python-2.7.18-r1
Total files : 4177
Total size : 63.28 MiB
Tux ~ $ equery size python-3.7.8-r2
dev-lang/python-3.7.8-r2
Total files : 6616
Total size : 98.74 MiB
合計200MB未満のデータを復元すると、他の面白いことが壊れる可能性がありますか?
気づく! :あなたは絶対できません。変化、使用フラグを調整して、ある言語バージョンから別の言語バージョンにプログラムを移植します。プログラムがまだ互換性がない場合は、すべてを壊す他のライブラリにリンクするだけです。
高いリスク(*):インストールされているパッケージがそのパッケージに厳密に依存していないことを確認する前に、パッケージのマージを試してはいけません。 Python 2からPython 3に移植されていないプログラムを言うことです。 (私は個人的に私のシステムにpython-2.7.18-r1が存在するという肯定的な証拠を得ました)
そうではありません。 3.6と3.7を正常に削除すると、glib(2.62.6)、Wireshark、gitよりもほぼ確実に中断されます。私が知っている限り、最新の安定版はまだ3.8と互換性がありません。
このセクションで回復する可能性がまったくなく、Portage自体を損傷した可能性があります。バックアップのおかげで...ほぼ確実に...作成を避けました...