CentOS   发布时间:2022-04-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了centos – 来自/var/tmp/rpm-tmp.ajKra4的错误退出状态(%prep)大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我有一个奇怪的RPM问题,我是新手,所以请耐心等待…我创建了spec文件,当我运行构建时,我收到一个错误: /var/tmp/rpm-tmp.ajKra4:第36行:cd:hero-01:没有这样的文件或目录 错误:来自/var/tmp/rpm-tmp.ajKra4的错误退出状态(%prep) 然后我检查那个临时文件,它正在尝试将CD发送到一个不存在的目录.它应该在spec文件中创建吗?如果有的话
我有一个奇怪的RPM问题,我是新手,所以请耐心等待…我创建了spec文件,当我运行构建时,我收到一个错误

/var/tmp/rpm-tmp.ajKra4:第36行:cd:hero-01:没有这样的文件或目录
错误:来自/var/tmp/rpm-tmp.ajKra4的错误退出状态(%prep)

然后我检查那个临时文件,它正在尝试将CD发送到一个不存在的目录.它应该在spec文件中创建吗?如果有的话?

这是我的spec文件

SumMary: Install Hero
    Name: hero
    Version: 01 
    Release: 1
    Group: Billing reporTing
    source: %{name}-%{version}.tar.gz
    License: SLA

    %description
    Hero billing reports system

    %prep
    rm -rf %{_topdir}/BUILD/*

    %setup

    %install
    mkdir -p /opt/%{name}
    cp -r * /opt/%{name}

    %post
    find /opt/%{name} -type d -exec chmod 755 {} \;
    find /opt/%{name} -type f -exec chmod 644 {} \;
    chmod -R 755 /opt/%{name}/bin



    %files 
    /opt/%{name}
    %defattr(-,root,0755)

    %clean
    rm -rf $RPM_BUILD_ROOT

    %postun
    rm -rf /opt/%{name}

也许我错过了什么?不会是第一个大声笑,谢谢

这也是tmp文件输出内容

#!/bin/sh

      RPM_sourcE_DIR="/root/rpmbuild/sourcES"
      RPM_BUILD_DIR="/root/rpmbuild/BUILD"
      RPM_OPT_FLAGS="-O2 -g"
      RPM_ARCH="x86_64"
      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="hero"
      RPM_PACKAGE_VERSION="01"
      RPM_PACKAGE_RELEASE="1"
      export RPM_PACKAGE_NAME RPM_PACKAGE_VERSION RPM_PACKAGE_RELEASE
      LANG=C
      export LANG
      unset CDPATH DISPLAY ||:
      RPM_BUILD_ROOT="/root/rpmbuild/buildrOOT/hero-01-1.x86_64"
      export RPM_BUILD_ROOT

      PKG_CONfig_PATH="/usr/lib64/pkgconfig:/usr/share/pkgconfig"
      export PKG_CONfig_PATH

      set -x
      umask 022
      cd "/root/rpmbuild/BUILD"
    rm -rf /root/rpmbuild/BUILD/*

    cd '/root/rpmbuild/BUILD'
    rm -rf 'hero-01'
    /usr/bin/gzip -dc '/root/rpmbuild/sourcES/hero-01.tar.gz' | /bin/tar -xvvf -
    STATUS=$?
    if [ $STATUS -ne 0 ]; then
      exit $STATUS
    fi
    cd 'hero-01'
    /bin/chmod -Rf a+rX,u+w,g-w,o-w .

    exit 0
查看 http://www.rpm.org/max-rpm/s1-rpm-inside-macros.html,特别是“-n – 设置构建目录的名称”部分.

%setup宏期望在解开tar.gz后,会有一个hero-01目录可用,但你的hero-01.tar.gz可能会创建一些其他目录名,可能是名称中没有版本的名称.

因此,例如,如果在解除后的/ root / rpmbuild / BUILD中有一个’hero’目录而不是’hero-01’目录,那么更新spec文件以使用’%setup -n hero’而不是’ %建立’.

@H_607_40@

大佬总结

以上是大佬教程为你收集整理的centos – 来自/var/tmp/rpm-tmp.ajKra4的错误退出状态(%prep)全部内容,希望文章能够帮你解决centos – 来自/var/tmp/rpm-tmp.ajKra4的错误退出状态(%prep)所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。