Requires标签还不能满足其他要求.
所以我写了一个脚本来验证这些东西,但是我应该放在哪里呢?
如果未找到,那么我想退出安装,提示用户在尝试再次安装此rpm之前先执行步骤.
在%install标记中写入出口1无法使用rpmbuild构建rpm.
说%install的退出代码错误.
编辑:让我为您提供一个示例.我最初想要测试的是是否存在Oracle Java 6.如果没有,请提供指向Java6的路径.如果用户无法提供…,请退出RPM.如果没有Java,则不允许使用高级Java,并且安装不会成功.如果用户不想安装Java rpm软件包,则无法将其放置在“要求”中.
希望我能理解我的意思.
解决方法:
您可以将%pre节用于此类任务.
The %pre script executes just before the package is to be installed.
It is the rare package that requires anything to be done prior to
installation; none of the 350 packages that comprise Red Hat Linux
Linux 4.0 make use of it.
一些入门指南;脚本内容(未在%pre部分中使用)来自jpackage-utils,您将在此找到一些其他好的脚本示例:
%pre
# try to find jvm from java command
# try javac first, or we might get the location of the jre instead - djw
java=`which javac 2>/dev/null || :`
# if we don't have the jdk, then maybe we have the jre - djw
if [ -z "$java" ] ; then
java=`which java 2>/dev/null || :`
fi
if [ -n "$java" ] ; then
while [ -h "$java" ] ; do
java=`readlink $java 2>/dev/null`
done
return
fi
echo "Can't find java virtual machine, aborting."
exit 1