"Make install"と "Make install clean"を比較しますか?

* nixでは、ソフトウェアをコンパイルするとき、いつ実行すればよいですか:

# make install

# make install clean

4

1 答え

引数で make を呼び出すと、ターゲットのリストが表示されます。

これについては、FreeBSDハンドブックのポートのアップグレードセクションを参照してくださいそれは言う:

Unlike the usual make install clean command, it will upgrade all
the dependencies prior to building and installing the selected
port.

[...]

Note: You can save two extra steps by just running make install
clean instead of make, make install and make clean as three
separate steps.

また、サイドノートとして:本当に必要な場合以外は、パッケージをルートとしてビルドしないでください。一般的には特権のないアカウントで作業する必要があります。最後に、必要な場合は sudo make install を実行することができます。ただし、非特権ユーザーをインストールディレクトリへの書き込みアクセス権を持つグループに追加すること、または非システムエリアにインストールする方が良い(たとえば、 ./ configure LinuxやBSDのいずれのシステムでも、通常はパッケージと、ソフトウェアのインストールに使用されるパッケージングシステムがあるので、 - prefix = を使うことができます。

3
追加された
だから、 "make install clean"は3つのコマンドを実行するのと同じです:make、make install、make clean?
追加された 著者 Eggs McLaren,
いいえ、それは2つのコマンドです。make installとmake cleanを実行します。
追加された 著者 Karoly Horvath,
@aculich:いいえ、単純な make は、デフォルトのコマンド(Makefileで設定可能)を実行することを意味します。コマンドを指定すると実行されません(指定されたコマンドの1つに依存しない限り)。
追加された 著者 Karoly Horvath,
@ Hank8と@yi_H実際には、3つの別々のコマンドを実行するのと同等の 2つのターゲットを持つ 1つのコマンドです。 make コマンド自体に暗黙のうちに make install コマンドを呼び出すと、これに相当する。
追加された 著者 aculich,
@yi_Hあなたは、メイクファイルで最初に見つかったターゲットに対応するデフォルトのコマンドを実行するという意味です。 GNUや他の多くのプログラムの規約は、 all:を最初のターゲットにしてデフォルトにすることです。通常、 make install には make all 相当のを呼び出すために必要な依存関係があります。
追加された 著者 aculich,