パッケージ管理システムとは何かを理解しようとしています。私はそれの主要な概念を理解していますが、いくつか質問があります。
例を使用するには;私のアプリケーションがpython 2.7を使用し、wxPythonがパッケージ管理システムによってpython 2.7がインストールされ、wxPythonがインストールされていることを確認してから、最後にアプリケーション(pythonスクリプトファイル)?
パッケージ管理システムとインストーラー(後者はWindowsシステムにあります)は、作業環境全体、特にライブラリーとプログラム自体がシステムにインストールされていることを確認できます。これには通常、すべての直接の依存関係が含まれますが、開発中にのみ必要となるコンパイラやリンカーなどは含まれません。ターゲットシステム上にビルドすることを目的としたソースパッケージがあります。この場合、特定のものが利用可能かどうかをチェックすることがありますが、通常はそれらをインストールしません。通常、ビルドプロセス中にエラーメッセージまたは警告が表示されます。
したがって、可能であれば、パッケージはプログラムの実行に必要なすべてのものを直接インストールします(Linuxでパッケージマネージャーを実行すると、「15個の追加パッケージをインストールする必要があります。続行しますか?」などの情報が頻繁に表示されます。これらの追加パッケージはライブラリやその他の依存関係です) 。パッケージを作成するときは、任意の種類の依存関係を定義できます。ライブラリに限定されず、グラフィックやドキュメントのパッケージ、またはプログラム自体から独立した状態を維持するために選択できるその他のリソースを含めることができます。
Apt-get(Debianベースのシステムでパッケージ管理に使用されるツール)のようなコマンドラインツールがありますが、それらのタスクを実行するためのGUIプログラムもあります(ただし、多くの場合、GUIを提供し、実際にclツールを呼び出します)。しかし、これらのclツール自体は、理論的には任意のプログラムに含めることができるライブラリの関数を使用しています。
そのため、パッケージマネージャーはインストーラーと多少似た動作をします。主な違いは、pmがオペレーティングシステムの一部であり、インストールされたパッケージに関する情報を中央の場所に保持することです。インストーラーはWindowsで使用される可能性が高く、動作はわずかに独立しており、独自のプログラムです(レジストリなどのシステム機能も使用します)。 Linuxシステムではインストーラーはかなり珍しいですが、ソフトウェアがインストーラーを必要とし、パッケージ管理との整合性を確保するためにターゲットシステムで使用されるライブラリに基づいてインストーラーを作成することを妨げるものは何もありません。