、あなたが%{buildroot]
ディレクトリ内のすべてのファイルをインストールすることになっています。それらが最終システムにインストールされる方法だけです。
rm -rf "%{buildroot}"
彼はこのディレクトリを消去します。私はこれを決して使用しません。私のビルドルートは私のパッケージごとにユニークですから。
install -m 0755 -d "%{buildroot}%{_prefix}"
%{_prefix}
変数が宣言されているように思われる(私のspecファイルの先頭にBuildRoot: %{_tmppath}/%{name}-%{version}-build
を使用)。彼はそのディレクトリを作成するだけです。おそらく%{_prefix}
が%files
セクションで再利用されます。ここ
%__install -D -m0644 "%{SOURCE0}" "%{buildroot}%{_prefix}/ROOT.war"
ファイル%{SOURCE0}
は%{buildroot}%{_prefix}
ディレクトリに(コピー)がインストールされています。 ROOT.warファイルがその回転数にパッケージされることを意味し
%files
%{_prefix}/ROOT.war
:だから%ファイルのセクションで私はこのような行を期待します。
-D
DESTのすべての主要なコンポーネントを作成します。 %__install -D
コマンドはちょうど/usr/bin/install -D
に展開
EDIT(defined macrosを参照)
-D
オプションは、インストールマニュアルページで説明されています最後を除き、コピー元をDESTにコピー
ありがとう!しかし、この%__ install -Dは何をしていますか? – devops