a.out ファイル (実行可能ファイル) をコピーすることとアプリケーションをインストールすることの違いは何ですか?

a.out ファイル (実行可能ファイル) をコピーすることとアプリケーションをインストールすることの違いは何ですか?

アプリケーション ソフトウェアをインストールすることと、アプリケーションの実行可能ファイル (例: a.out) をコピーすることの違いは何ですか? a.out ファイルを実行すると何らかの結果が得られますが、インストールされたアプリケーションを実行しても何らかの結果が得られます。誰かが「アプリケーションをインストールする」と言っているのと、実行可能ファイルをコピーすることの違いがわかりません。アプリケーションをインストールすると、実際に何が起こりますか? 実行可能ファイルを 1 台のコンピューターから別のコンピューター (同じ OS と類似のハードウェア) にコピーして、そこで実行するだけの場合とどう違うのですか?

答え1

さて、インストールアプリケーションの場合、通常はdpkgまたは上位レベルのaptファミリーのようなパッケージ マネージャーを使用します。この場合、実行ファイルはパッケージで出荷され、実行ファイルを実行するために必要な追加のライブラリ、マニュアル ページ、開発者ファイル、構成ファイルなども含まれる場合があります。これの利点は、管理者がインストールされている内容を追跡できることと、新しいソフトウェアまたは更新をインストールするときに、新しいソフトウェアが既にインストールされている他のソフトウェアやライブラリと衝突して他のアプリケーションがクラッシュしないようにできることです。

したがって、実行可能ファイルを別のシステムにコピーするだけでもうまくいくかもしれませんが、破損する可能性があるため、お勧めできません。実行可能ファイルを、、、、などのシステム パス以外の場所にコピーするのは安全です。/bin/この/sbinような目的には、およびを使用する/usr/binか、または実行可能ファイル用のディレクトリを下に作成してそこに配置することも できます。次に、フル パスで実行可能ファイルを呼び出すか、実行可能ファイルへのパスを環境変数に追加します。/usr/sbin
/usr/local/bin/usr/local/sbin/optPATH

$ mkdir -p /opt/myapp/bin
$ cp myexec /opt/myapp/bin/

$ /opt/myapp/bin/myexec

または

$ export PATH=$PATH:/opt/myapp/bin
$ myexec

答え2

すべてのUnix系オペレーティングシステム(Ubuntuなど)の基本原則はすべてがファイルですパッケージの内容を見ると、そこには実行ファイルも見つかります。そして、まったく同じ(または少なくとも非常に類似した)ソフトウェアとハ​​ードウェアの組み合わせを持つ2台のマシンで(プラットホーム) の場合は、実行可能ファイルを使用するだけで済みます。ただし、ほとんどのプログラムは 1 つの実行可能ファイルだけで構成されているわけではls -R /usr |grep libreofficeありません。より複雑なパッケージの例では、すべてのファイルを手動で個別の場所にコピーしたくないですよね。

場合によっては (特に小さなプログラムをテストする場合)、実行可能な実行ファイルを誰かに送信するだけでも意味がありますが、ほとんどの場合、完成品のパッケージを提供する必要があります。

パッケージ マネージャーは通常、依存関係のインストール、インストール済みアプリケーションと PATH のリストへのプログラムの追加も処理し、最後に、新しいバージョンがリリースされたときにプログラムを更新するオプションも提供します。

関連情報