rpm 빌드 절차의 출력을 최소화하고 싶습니다. rpmbuild -ba --quiet "/tmp/yaneeve/kit/linux/rpm_spec"
--quiet 옵션 플래그와 함께 rpmbuild 명령을 실행하면 광범위한 디버그 정보가 생성됩니다.
내 시스템은 다음과 같습니다 : Linux yaneeve-lnx-82-5 2.4.21-47.ELsmp #1 SMP Wed Jul 5 20:38:41 EDT 2006 i686 i686 i386 GNU/Linux
rpmbuild 버전은 다음과 같습니다 내 RPM 사양 파일의 RPM version 4.2.3
은 % 준비 섹션은 다음과 같습니다
%prep
. $LOGGER_FUNC_FILE_LOCATION/logger.sh
SCRIPT_NAME='rpm_spec-prep'
SOURCE_DIR=`readlink -f -n %{_sourcedir}`
PACKAGE_DIR=`readlink -f -n %{_pkg_script_dir}`
BUILD_PRODUCT_DIR=`readlink -f -n %{_build_product_dir}`
RESOURCE_DIR=`readlink -f -n %{_resource_dir}`
log $SCRIPT_NAME INFO "In the prep stage of the rpm spec file..."
if [[ -d $SOURCE_DIR && `ls -a $SOURCE_DIR | wc -w` -gt 2 ]] ; then
log $SCRIPT_NAME INFO "Source directory exists and is not empty - deleting content."
rm -rf $SOURCE_DIR//*
if [ $? -ne 0 ]; then
log $SCRIPT_NAME ERROR "Unable to remove $SOURCE_DIR/* - exiting."
exit 1
fi
fi
if [ ! -f $PACKAGE_DIR/include_src_files.sh ]; then
log $SCRIPT_NAME ERROR "File list does not exist - aborting."
exit 1
else
$PACKAGE_DIR/include_src_files.sh $BUILD_PRODUCT_DIR $RESOURCE_DIR $SOURCE_DIR
if [ $? -ne 0 ]; then
log $SCRIPT_NAME ERROR "Unable to run include_src_files.sh script - exiting."
exit 1
fi
fi
나는 다음과 같은 명령을 실행
rpmbuild가 결과로 다음 스크립트를 생성합니다 (set -x에주의).
#!/bin/sh
RPM_SOURCE_DIR="/tmp/yaneeve/output/kit/SOURCES"
RPM_BUILD_DIR="/tmp/yaneeve/output/kit/BUILD"
RPM_OPT_FLAGS="-O2 -g -pipe -march=i386 -mcpu=i686"
RPM_ARCH="i386"
RPM_OS="linux"
export RPM_SOURCE_DIR RPM_BUILD_DIR RPM_OPT_FLAGS RPM_ARCH RPM_OS
RPM_DOC_DIR="/usr/share/doc"
export RPM_DOC_DIR
RPM_PACKAGE_NAME="YANEEVE-APP"
RPM_PACKAGE_VERSION="4.2.2.0"
RPM_PACKAGE_RELEASE="01.0"
export RPM_PACKAGE_NAME RPM_PACKAGE_VERSION RPM_PACKAGE_RELEASE
RPM_BUILD_ROOT="/tmp/yaneeve/output/kit/SOURCES"
export RPM_BUILD_ROOT
set -x
umask 022
cd /tmp/yaneeve/output/kit/BUILD
LANG=C
export LANG
unset DISPLAY
. $LOGGER_FUNC_FILE_LOCATION/logger.sh
SCRIPT_NAME='rpm_spec-prep'
SOURCE_DIR=`readlink -f -n /tmp/yaneeve/output/kit/SOURCES`
PACKAGE_DIR=`readlink -f -n /tmp/yaneeve/output/kit/../../kit/linux`
BUILD_PRODUCT_DIR=`readlink -f -n /tmp/yaneeve/output/kit/..`
RESOURCE_DIR=`readlink -f -n /tmp/yaneeve/output/kit/../../conf`
log $SCRIPT_NAME INFO "In the prep stage of the rpm spec file..."
if [[ -d $SOURCE_DIR && `ls -a $SOURCE_DIR | wc -w` -gt 2 ]] ; then
log $SCRIPT_NAME INFO "Source directory exists and is not empty - deleting content."
rm -rf $SOURCE_DIR//*
if [ $? -ne 0 ]; then
log $SCRIPT_NAME ERROR "Unable to remove $SOURCE_DIR/* - exiting."
exit 1
fi
fi
if [ ! -f $PACKAGE_DIR/include_src_files.sh ]; then
log $SCRIPT_NAME ERROR "File list does not exist - aborting."
exit 1
else
$PACKAGE_DIR/include_src_files.sh $BUILD_PRODUCT_DIR $RESOURCE_DIR $SOURCE_DIR
if [ $? -ne 0 ]; then
log $SCRIPT_NAME ERROR "Unable to run include_src_files.sh script - exiting."
exit 1
fi
fi
set -x가 삽입되는 이유는 무엇입니까? 이것이 광범위한 디버그 정보가 인쇄 된 이유입니다. 내가 뭘 잘못하고 있니? 또는 rpmbuild 프로그램에 버그가 있습니까?
배포에
주제를 조금 줄이십시오. – JesperE
희망 과목이 지금보다 명확합니다 ... – Yaneeve