うまくいけば、これはこのコミュニティで尋ねることができる質問です。現在、CentOS 5 環境用に zookeeper-3.4.5-13 をビルドしています。このプロセス中に、必要なパッケージの長いリスト (mockito -> objenesis -> maven -> maven2 -> classworlds -> dom4j -> jtidy-> ant -> jakarata-common-net -> saxon) を確認していますが、saxon-6.5.5-3.3 をビルドするときに問題が発生しています。
ビルドすると、プロセスの %build セクションに到達し、次のようなエラーが発生します。
DEBUG: + exit 0
DEBUG: Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.mUxwgM
DEBUG: + umask 022
DEBUG: + cd /builddir/build/BUILD
DEBUG: + cd saxon-6.5.5
DEBUG: + LANG=C
DEBUG: + export LANG
DEBUG: + unset DISPLAY
DEBUG: + export CLASSPATH=
DEBUG: + CLASSPATH=
DEBUG: + ant -Dj2se.javadoc=/usr/share/javadoc/java -Djdom.javadoc=/usr/share/javadoc/jdom
DEBUG: /var/tmp/rpm-tmp.mUxwgM: line 32: ant: command not found
DEBUG: error: Bad exit status from /var/tmp/rpm-tmp.mUxwgM (%build)
DEBUG: RPM build errors:
DEBUG: Bad exit status from /var/tmp/rpm-tmp.mUxwgM (%build)
DEBUG: Child returncode was: 1
最初に確認するのは、ant がインストールされているかどうかです。確かに、次のようになりました。
DEBUG: ================================================================================
DEBUG: Package Arch Version Repository
DEBUG: Size
DEBUG: ================================================================================
DEBUG: Installing:
DEBUG: ant i386 1.6.5-2jpp.2 core 2.0 M
DEBUG: java-1.6.0-openjdk-javadoc i386 1:1.6.0.0-1.21.b17.el5 core 20 M
DEBUG: jdom i386 1.0-4jpp.1 core 328 k
DEBUG: jdom-javadoc i386 1.0-4jpp.1 core 305 k
DEBUG: jpackage-utils noarch 1.7.5-3.8.iot5 core 63 k
DEBUG: xml-commons-apis
必要に応じて他の情報も提供できますが、ant が見つからない理由を教えていただけるとありがたいです。
さらに詳しく知るには、これはモックを使用して実行されており、モック シェルに入ると、通常実行されると考えられる場所から何かが欠落していることが示されます。
答え1
ant 実行ファイルがパス内に見つかりません。
rpm -ql ant | grep 'bin/ant$' を実行し、bin/ ディレクトリが PATH 変数に含まれていることを確認します。