Bug 1081854
| Summary: | kpatch-build missed a few dependencies (inaccurate ERR) | ||||||
|---|---|---|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 7 | Reporter: | Linqing Lu <lilu> | ||||
| Component: | kpatch | Assignee: | Seth Jennings <sjenning> | ||||
| Status: | CLOSED UPSTREAM | QA Contact: | Linqing Lu <lilu> | ||||
| Severity: | high | Docs Contact: | |||||
| Priority: | unspecified | ||||||
| Version: | 7.0 | CC: | jpoimboe, sjenning | ||||
| Target Milestone: | rc | ||||||
| Target Release: | --- | ||||||
| Hardware: | x86_64 | ||||||
| OS: | Linux | ||||||
| Whiteboard: | |||||||
| Fixed In Version: | Doc Type: | If docs needed, set a value | |||||
| Doc Text: | Story Points: | --- | |||||
| Clone Of: | Environment: | ||||||
| Last Closed: | 2018-04-24 07:10:31 UTC | Type: | Bug | ||||
| Regression: | --- | Mount Type: | --- | ||||
| Documentation: | --- | CRM: | |||||
| Verified Versions: | Category: | --- | |||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||
| Embargoed: | |||||||
| Attachments: |
|
||||||
|
Description
Linqing Lu
2014-03-28 05:41:56 UTC
This looks like a problem with yum-builddep not installing all the build dependencies that are required for the kernel rpm. Looking into it more. Below is the BuildRequires section of the kernel spec file. It would seem that yum-builddep does not process the spec file enough to figure out the values for the if conditionals and just ignores them.
======
#
# List the packages used during the kernel build
#
BuildRequires: module-init-tools, patch >= 2.5.4, bash >= 2.03, sh-utils, tar
BuildRequires: xz, findutils, gzip, m4, perl, make >= 3.78, diffutils, gawk
BuildRequires: gcc >= 3.4.2, binutils >= 2.12, redhat-rpm-config >= 9.1.0-55
BuildRequires: hostname, net-tools, bc
BuildRequires: xmlto, asciidoc
BuildRequires: openssl
BuildRequires: hmaccalc
%ifarch x86_64
BuildRequires: pesign >= 0.109-4
%endif
%if %{with_sparse}
BuildRequires: sparse >= 0.4.1
%endif
%if %{with_perf}
BuildRequires: elfutils-devel zlib-devel binutils-devel newt-devel python-devel perl(ExtUtils::Embed) bison
BuildRequires: audit-libs-devel
%ifnarch s390 s390x
BuildRequires: numactl-devel
%endif
%endif
%if %{with_tools}
BuildRequires: pciutils-devel gettext
%endif
%if %{with_debuginfo}
# Fancy new debuginfo generation introduced in Fedora 8/RHEL 6.
# The -r flag to find-debuginfo.sh invokes eu-strip --reloc-debug-sections
# which reduces the number of relocations in kernel module .ko.debug files and
# was introduced with rpm 4.9 and elfutils 0.153.
BuildRequires: rpm-build >= 4.9.0-1, elfutils >= 0.153-1
%define debuginfo_args --strict-build-id -r
%endif
%ifarch s390x
# required for zfcpdump
BuildRequires: glibc-static
%endif
=====
This is also an issue in Fedora 20 as pesign is not installed because the BuildRequires is inside a conditional block that detects whether the build will used signed modules or not.
Oddly enough, when I do a "yum-builddep kernel" is doesn't pick up BuildRequires in conditional blocks. However, if I download the spec file and do a "yum-builddep kernel.spec" is _does_ evaluate the conditional blocks and installs the complete list of build dependencies. FYI - Observed two more dep missed from the same scenario: error: Failed build dependencies: pesign >= 0.109-4 is needed by kernel-3.10.0-121.el7.x86_64 bison is needed by kernel-3.10.0-121.el7.x86_64 This request was resolved in Red Hat Enterprise Linux 7.0. Contact your manager or support representative in case you have further questions about the request. The comment above is incorrect. The correct version is bellow. I'm sorry for any inconvenience. --------------------------------------------------------------- This request was NOT resolved in Red Hat Enterprise Linux 7.0. Contact your manager or support representative in case you need to escalate this bug. Related bug (yum-builddep missing dependencies) https://bugzilla.redhat.com/show_bug.cgi?id=1040219 I would seem that the only way to address this issue is to get the spec file and do a yum-builddep on it. |