残念ながら、%prep、%build、または %install セクションによって開始されたシェルで定義されたものは、ビルド環境で保持されません。 MACRO である %{AXIS2_C} を定義する必要があります 変数 (シェル変数ではない):
%define AXIS2_C /usr/local/something
両方のシェルで
として参照しますmake whatever FOO=%{AXIS2_C} # or however you used the env variable
そして %files セクションで
%file
%{AXIS2_C}/bin/services/services.xml
通常、最初の %define は仕様ファイルの先頭にあり、その目的に関するドキュメントがいくつかあります。マクロを動的に設定する必要がある場合は、%() などのより複雑な RPM 仕様のマクロ コマンドを使用してシェルを展開する必要があります。