Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cmake 错误:解压缩存档失败:cpio:安装rpm时出现错误_Cmake_Redhat_Rpm - Fatal编程技术网

Cmake 错误:解压缩存档失败:cpio:安装rpm时出现错误

Cmake 错误:解压缩存档失败:cpio:安装rpm时出现错误,cmake,redhat,rpm,Cmake,Redhat,Rpm,我使用 make package rpm --nodeps -i filename.rpm 命令,并将生成的rpm复制到具有公司特定操作系统的另一台机器上。现在,当我尝试使用 make package rpm --nodeps -i filename.rpm 我得到的错误与标题中的错误相同 所以我跑了 rpm -qa | grep rpm 在用于构建rpm软件包的机器上,获得以下信息: rpm-4.8.0-37.el6.x86_64 rpm-devel-4.

我使用

  make package
  rpm --nodeps -i filename.rpm
命令,并将生成的rpm复制到具有公司特定操作系统的另一台机器上。现在,当我尝试使用

  make package
  rpm --nodeps -i filename.rpm
我得到的错误与标题中的错误相同

所以我跑了

  rpm -qa | grep rpm
在用于构建rpm软件包的机器上,获得以下信息:

  rpm-4.8.0-37.el6.x86_64
  rpm-devel-4.8.0-37.el6.x86_64
  rpm-python-4.8.0-37.el6.x86_64
  rpm-libs-4.8.0-37.el6.x86_64
  rpm-build-4.8.0-37.el6.x86_64
  redhat-rpm-config-9.0.3-51.el6.noarch

经过一点调查,我尝试删除redhat rpm配置包,bam,rpm安装在另一台机器上运行。现在,这是一个解决方案,但我不认为我可以为我们将要用于创建rpm的每台机器卸载这个包。在使用cmake创建rpm包时,是否有其他方法可以忽略此redhat-rpm-config-9.0.3-51.el6.noarch?

您正在安装的系统的rpm版本是什么?它的来源是否在某处公开

如果使用较新的RPM/发行版构建二进制RPM,可能会出现各种兼容性问题。通常,我们使用buildroot(由mock创建)本身中的RPM和
redhat RPM config
版本构建二进制RPM,这与目标RPM版本相匹配,即使构建主机具有更新的RPM版本

如果这不是您的选项,我将查看由
redhat RPM config
控制的特定RPM功能。我立刻想到的是有效载荷压缩:

# Use XZ compression for binary payloads
%_binary_payload w2.xzdio

其他更改包括支持更大的文件,但这似乎不是问题所在,因为卸载
redhat rpm config
软件包不会改变它。

您正在安装的系统的rpm版本是什么?它的来源是否在某处公开

如果使用较新的RPM/发行版构建二进制RPM,可能会出现各种兼容性问题。通常,我们使用buildroot(由mock创建)本身中的RPM和
redhat RPM config
版本构建二进制RPM,这与目标RPM版本相匹配,即使构建主机具有更新的RPM版本

如果这不是您的选项,我将查看由
redhat RPM config
控制的特定RPM功能。我立刻想到的是有效载荷压缩:

# Use XZ compression for binary payloads
%_binary_payload w2.xzdio

其他更改包括支持更大的文件,但这似乎不是问题所在,因为卸载
redhat rpm config
包不会改变它。

您很可能在与目标操作系统不同的操作系统上使用rpmbuild进行二进制rpm。您应该使用“mock”来构建包

dnf install mock
mock -r epel-6-x86_64 yourpackage.src.rpm

您很可能在与目标操作系统不同的操作系统上使用rpmbuild实现了二进制RPM。您应该使用“mock”来构建包

dnf install mock
mock -r epel-6-x86_64 yourpackage.src.rpm
要解决在您的计算机上安装RPM软件包时出现的“错误:解压缩存档失败:cpio:坏魔术”问题,请执行以下操作:

1/列出服务器计算机(生成rpm pkg的计算机)上安装的rpm pkg: $rpm-qa | grep rpm …. …. 2/如果给定列表中存在pkg redhat-rpm-config-9.0.3-51.el6.noarch,则设计安装:

$ rpm -e redhat-rpm-config-9.0.3-51.el6.noarch
3/现在生成pkg并在您的开发机器上传输它。Pkg安装应该可以正常工作

 Philippe.
要解决在您的计算机上安装RPM软件包时出现的“错误:解压缩存档失败:cpio:坏魔术”问题,请执行以下操作:

1/列出服务器计算机(生成rpm pkg的计算机)上安装的rpm pkg: $rpm-qa | grep rpm …. …. 2/如果给定列表中存在pkg redhat-rpm-config-9.0.3-51.el6.noarch,则设计安装:

$ rpm -e redhat-rpm-config-9.0.3-51.el6.noarch
3/现在生成pkg并在您的开发机器上传输它。Pkg安装应该可以正常工作

 Philippe.

你好用于构建rpm的机器的rpm版本为4.8.0,而我尝试安装它的机器的rpm版本为5.1.9:)对不起,有趣的信息是目标上的rpm版本(及其来源)。我在上面编辑了我的评论。目标机器具有更新的rpm版本HI。用于构建rpm的机器的rpm版本为4.8.0,而我尝试安装它的机器的rpm版本为5.1.9:)对不起,有趣的信息是目标上的rpm版本(及其来源)。我在上面编辑了我的评论。目标机器具有较新的rpm版本向我们展示如何
make package
创建
文件名。rpm
?向我们展示
make package
如何创建
文件名。rpm