make install
ソースパッケージをコンパイルした後、このコマンドを正常に実行した後に新しくインストールされたパッケージを認識すると、システムに何が起こるのか疑問に思います。
ディストリビューション用にプリコンパイルされたLinuxパッケージをどこかで検索し、解凍したパッケージ全体をインストールするinstall
代わりに使用したいとし、そのパッケージを使用して一般的に実行するすべてのことを確認します。すべてを再帰的にコピーするためにターゲットを実行しようとしましたが、失敗し、何もしないようです。cp
/usr/local
sudo make install
sudo install -r -T ./[pre-compiled package] /usr/local
/usr/local
答え1
make install
install
指定されたターゲットに対してリストされているコマンドを実行./Makefile
します(また、インストールが依存する他の未解決ターゲットのコマンドも実行します。たとえば、インストールターゲットは通常ビルドターゲットによって異なります)。 @Henrikが述べたように、ファイルのコピー、ディレクトリの作成、所有権および/または権限の設定、初期設定ファイルの作成またはコピーなど、何でも構いません。
ちなみに、コマンドmake install
はinstall
完全に異なる2つです。前者は「install」というMakefileターゲットを実行します。後者は、ソフトウェアをインストールするときに通常、Makefileのインストール先で使用されるcp
所有者、グループ、権限を設定し、他の多くの便利なタスクを実行できる高度なバージョンです。install
とにかく、make
これはmake install
あなたがやろうとしていること(事前にコンパイルされたソフトウェアをインストールすること)とはほとんど関係ありません。
プリコンパイルされたソフトウェアをインストールするには、配布パッケージ(または.rpm
ファイル.deb
など)がある場合は、配布パッケージツールを使用してdpkg
Debian / Ubuntu、rpm
Fedoraなどにインストールしてください。まだパッケージのコピーはありませんが、はい配布用のパッケージとして提供されている場合は、apt
(debian)またはdnf
(fedora)を使用してパッケージを入手してyum
インストールしてください。
適切な配布パッケージ(たとえば、複数のファイルを含むtar.gz)ではなく、ソースコードやパッケージが見つからないプリコンパイル済みソフトウェアの場合、最良の方法は次のプログラムを使用することです。GNUストーまたは同様です。
stow
パッケージ化されていないソフトウェアをインストールするのは非常に簡単で、後で孤立したファイルを残さずに後で削除することができます(新しいバージョンにアップグレードする準備など)。これは単純なuntarまたはcpの役割です。〜するする。
管理されていないソフトウェアは混乱を招きます。可能であれば、システムが提供するパッケージツールを使用してください。そうでない場合は、同様のものを使用してくださいstow
。
昨日この記事を書いて言及したかった別のプログラムはインストールの確認しかし、私は今までその名前を覚えていませんでした。 checkinstall
他の方法で使用するソフトウェアの機能パッケージを簡単に作成できます(make install
例:独自のソフトウェア)。ただし、ソースコードが利用可能な場合は非常に便利です。