私は依存関係をインストールしようとしてきました。設定ツール、明らかにモジュールは以下を使用してインストールされました。簡単。ところでバージョンが間違っているようで、次にインストールしてみました。指す変更があるかどうかを確認するためのものです(スポイラー:何も変更されていないようです)。
次の違いは何ですか(存在する場合)?
pip3 install setuptools
そして:
apt install python3-setuptools
ベストアンサー1
誰でも次の点の違い(ある場合)を説明していただきありがとうございます。
最高レベル:システムと競合する可能性がある場合は、pip install
システムにインストール(--system
または--user
デフォルト以外のLinuxディストリビューションでは省略)を使用しないでください。これは非常に安全です。--user
apt install
説明する:
apt
Linuxディストリビューション用のソフトウェアパッケージインストールツールです。今日のLinuxディストリビューションは、主に中断することなく互いに連携するパッケージをインストールする方法を提供することに焦点を当てています。たとえば、libreofficeが使用するライブラリをインストールしようとしているが、そのバージョンがlibreofficeバージョンと互換性がない場合、Linuxディストリビューションのツールは残念ながらコマンドを実行するためにlibreofficeが要求されたバージョンと機能しないため、削除する必要があることをお知らせします。
これはほとんど起こらないという事実は、現代のLinuxディストリビューションがここでどれだけうまく機能するかを示しています。通常、インストールできるほとんどのソフトウェアはapt
一緒にうまく機能します。
pip
一方、コンピュータに他のどのソフトウェアが必要かはわかりません。 pipにシステムブート機能を破壊する特定のバージョンをインストールするように指示すると、引き続きそうなります。
pip
Python専用です。そのマシンでは、Pythonに関連するすべてが「公正なゲーム」であり、任意に処理できると仮定します。正直なところ、これはほとんど真実ではありません。たとえば、Fedora(使用している他のLinuxディストリビューション)ではそうです。いいえ)、Easy Crack Installation Tool(必要に応じてdnf
Fedora)を使用できます。apt
pip
それでは、なぜpip
まだ存在するのですか?まあ、あります。はいこの場合、pipは、自分が見るPythonのすべての部分が自分の制御下にあると仮定できます。仮想環境。これにはPythonモジュール自体がインストールされておらず、コンピュータの他のソフトウェアと競合しません。単に他のソフトウェアが環境を理解していないからです。
それを使うのはとても簡単です。以下を使用して、このような環境を設定できます。
python3 -m venv ~/bertsexperiment
~/bertsexperiment
これにより、Pythonコンテンツがインストールされるフォルダが設定されます。その後、好きな場所でその環境を「有効にする」ことができます(実際には一部の環境変数を変更するだけです)。ただし、これは現在のプロセスとそのプロセスで始まる項目にのみ影響します。試してみてください:
source ~/bertsexperiment/bin/activate
このシェルは、将来のすべてのPythonツールがこのフォルダを「プレフィックス」として使用するように設定されます。
たとえば、このシェルでsetuptoolsを更新したい場合は、上記のsource
ようにアクティブ化スクリプトを実行するとpip3 install --upgrade setuptools
virtualenvにインストールされます。
簡単に言うと:
- 疑わしい場合は、
apt
ソフトウェアスタックを連携させるのがディストリビューションの作業なので、使用してください。 pip
現在のプロジェクトでのみ使用されており、システムの他のものも使用されていないフォルダに何かをインストールしたい場合を除き、このオプションを使用しないでください。
したがって、これを使用したい唯一のリアルタイム時間は、Python virtualenvを使用するときです。