gpt4 book ai didi

centos - 为什么 rpmbuild 需要这些导致此错误的 C++ 库?

转载 作者:太空宇宙 更新时间:2023-11-03 17:15:18 25 4
gpt4 key购买 nike

我是 RPM 打包的新手,但 rpmbuild 似乎需要 C++ 标准库,我不知道为什么。

这是 RPM 规范文件:

Name: go-github-release-test
Version: 0.0.1
Release: 1
License: LICENSE
Url:
Summary: Test of go-github-release process

%description
Test of go-github-release process

%prep

%build

%install
mkdir -p %{buildroot}/%{_bindir}
cp /root/go-github-release-test/build/go-github-release-test %{buildroot}/%{_bindir}


%files
%{_bindir}/go-github-release-test


%clean

%changelog

* Fri Jun 09 2017 Jerry W - 0.0.1-1
- added text to readme
- add CmakeLists.txt
- add appveyor.yml and travis.yml
- add gitignore
- moved main cpp around
- added helloworld.cpp
- added detectme.txt
- removed test dirlist
- added readme
- init: bump script
- initial commit

这是显示它未能生成“noarch”包的日志,因为它包含特定于 arch 的 C++ 库,即使我没有在任何地方引用它们:

[root@localhost go-github-release-test]# rpmbuild --target noarch -bb pkg-build/SPECS/go-github-release-test.spec --define "_topdir /root/go-github-release-test/pkg-build"
Building target platforms: noarch
Building for target noarch
Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.aEY2Y9
+ umask 022
+ cd /root/go-github-release-test/pkg-build/BUILD
+ exit 0
Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.jOeknE
+ umask 022
+ cd /root/go-github-release-test/pkg-build/BUILD
+ exit 0
Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.PZA4L8
+ umask 022
+ cd /root/go-github-release-test/pkg-build/BUILD
+ '[' /root/go-github-release-test/pkg-build/BUILDROOT/go-github-release-test-0.0.1-1.noarch '!=' / ']'
+ rm -rf /root/go-github-release-test/pkg-build/BUILDROOT/go-github-release-test-0.0.1-1.noarch
++ dirname /root/go-github-release-test/pkg-build/BUILDROOT/go-github-release-test-0.0.1-1.noarch
+ mkdir -p /root/go-github-release-test/pkg-build/BUILDROOT
+ mkdir /root/go-github-release-test/pkg-build/BUILDROOT/go-github-release-test-0.0.1-1.noarch
+ mkdir -p /root/go-github-release-test/pkg-build/BUILDROOT/go-github-release-test-0.0.1-1.noarch//usr/bin
+ cp /root/go-github-release-test/build/go-github-release-test /root/go-github-release-test/pkg-build/BUILDROOT/go-github-release-test-0.0.1-1.noarch//usr/bin
+ /usr/lib/rpm/check-buildroot
+ /usr/lib/rpm/redhat/brp-compress
+ /usr/lib/rpm/redhat/brp-strip /usr/bin/strip
+ /usr/lib/rpm/redhat/brp-strip-comment-note /usr/bin/strip /usr/bin/objdump
+ /usr/lib/rpm/redhat/brp-strip-static-archive /usr/bin/strip
+ /usr/lib/rpm/brp-python-bytecompile /usr/bin/python 1
+ /usr/lib/rpm/redhat/brp-python-hardlink
+ /usr/lib/rpm/redhat/brp-java-repack-jars
Processing files: go-github-release-test-0.0.1-1.noarch
Provides: go-github-release-test = 0.0.1-1
Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
Requires: libc.so.6()(64bit) libc.so.6(GLIBC_2.2.5)(64bit) libgcc_s.so.1()(64bit) libm.so.6()(64bit) libstdc++.so.6()(64bit) libstdc++.so.6(GLIBCXX_3.4)(64bit) rtld(GNU_HASH)
error: Arch dependent binaries in noarch package


RPM build errors:
Arch dependent binaries in noarch package

最佳答案

答案是 rpmbuild 使用 ldd 命令对 %files 部分中包含的任何二进制文件使用自动依赖生成:

http://ftp.rpm.org/max-rpm/s1-rpm-depend-auto-depend.html

关于centos - 为什么 rpmbuild 需要这些导致此错误的 C++ 库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45113261/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com