Passerini Marco
2022-Apr-19 14:56 UTC
[CentOS] Kernel rebuild failling on Centos 7: missing libbpf-devel and dwarves rpm too old
Hi, I'm trying to rebuild the kernel specifically on Centos7 from src.rpm but some packages are missing or too old. I managed to get them and compile on Centos8 though. Any advice? # yumdownloader --source kernel.src # rpm -ivh ./kernel-4.18.0-348.20.1.el7.src.rpm # rpmbuild -bb --target=`uname -m` ~/rpmbuild/SPECS/kernel.spec Building target platforms: x86_64 Building for target x86_64 error: Failed build dependencies: libbpf-devel is needed by kernel-4.18.0-348.20.1.el7.x86_64 rpm < 4.13.0.1-19 conflicts with kernel-4.18.0-348.20.1.el7.x86_64 dwarves < 1.13 conflicts with kernel-4.18.0-348.20.1.el7.x86_64 # rpm -q dwarves dwarves-1.10-1.el7.x86_64 # rpm -q rpm rpm-4.11.3-48.el7_9.x86_64 # yum search libbpf-devel Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: de.mirrors.clouvider.net * centos-sclo-rh: ftp.tu-chemnitz.de * centos-sclo-sclo: centos.mirrors.psw.services * epel: ftp.uni-kl.de * extras: mirror.imt-systems.com * updates: centos.mirror.iphh.net Warning: No matches found for: libbpf-devel No matches found # yum info rpm Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: de.mirrors.clouvider.net * centos-sclo-rh: ftp.tu-chemnitz.de * centos-sclo-sclo: mirror.softaculous.com * epel: mirror.nextlayer.at * extras: mirror.imt-systems.com * updates: centos.mirror.iphh.net Installed Packages Name : rpm Arch : x86_64 Version : 4.11.3 Release : 48.el7_9 Size : 2.5 M Repo : installed>From repo : updatesSummary : The RPM package management system URL : http://www.rpm.org/ License : GPLv2+ Description : The RPM Package Manager (RPM) is a powerful command line driven : package management system capable of installing, uninstalling, : verifying, querying, and updating software packages. Each software : package consists of an archive of files along with information about : the package like its version, a description, etc. # yum info dwarves Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: de.mirrors.clouvider.net * centos-sclo-rh: ftp.tu-chemnitz.de * centos-sclo-sclo: ftp.antilo.de * epel: mirror.de.leaseweb.net * extras: mirror.imt-systems.com * updates: centos.mirror.iphh.net Installed Packages Name : dwarves Arch : x86_64 Version : 1.10 Release : 1.el7 Size : 199 k Repo : installed>From repo : epelSummary : Debugging Information Manipulation Tools URL : http://oops.ghostprotocols.net:81/blog License : GPLv2 Description : dwarves is a set of tools that use the debugging information inserted in : ELF binaries by compilers such as GCC, used by well known debuggers such as : GDB, and more recent ones such as systemtap. : : Utilities in the dwarves suite include pahole, that can be used to find : alignment holes in structs and classes in languages such as C, C++, but not : limited to these. : : It also extracts other information such as CPU cacheline alignment, helping : pack those structures to achieve more cache hits. : : A diff like tool, codiff can be used to compare the effects changes in source : code generate on the resulting binaries. : : Another tool is pfunct, that can be used to find all sorts of information about : functions, inlines, decisions made by the compiler about inlining, etc. Regards, Marco Passerini
Phil Perry
2022-Apr-19 15:46 UTC
[CentOS] Kernel rebuild failling on Centos 7: missing libbpf-devel and dwarves rpm too old
On 19/04/2022 15:56, Passerini Marco wrote:> Hi, > > > I'm trying to rebuild the kernel specifically on Centos7 from src.rpm but some packages are missing or too old. I managed to get them and compile on Centos8 though. Any advice? > > > # yumdownloader --source kernel.src > > # rpm -ivh ./kernel-4.18.0-348.20.1.el7.src.rpm > > # rpmbuild -bb --target=`uname -m` ~/rpmbuild/SPECS/kernel.spec > Building target platforms: x86_64 > Building for target x86_64 > error: Failed build dependencies: > libbpf-devel is needed by kernel-4.18.0-348.20.1.el7.x86_64 > rpm < 4.13.0.1-19 conflicts with kernel-4.18.0-348.20.1.el7.x86_64 > dwarves < 1.13 conflicts with kernel-4.18.0-348.20.1.el7.x86_64 >You seem to be trying to build an el8 kernel source on el7?> # rpm -q dwarves > dwarves-1.10-1.el7.x86_64 > > # rpm -q rpm > rpm-4.11.3-48.el7_9.x86_64 > > # yum search libbpf-devel > Loaded plugins: fastestmirror > Loading mirror speeds from cached hostfile > * base: de.mirrors.clouvider.net > * centos-sclo-rh: ftp.tu-chemnitz.de > * centos-sclo-sclo: centos.mirrors.psw.services > * epel: ftp.uni-kl.de > * extras: mirror.imt-systems.com > * updates: centos.mirror.iphh.net > Warning: No matches found for: libbpf-devel > No matches found > > # yum info rpm > Loaded plugins: fastestmirror > Loading mirror speeds from cached hostfile > * base: de.mirrors.clouvider.net > * centos-sclo-rh: ftp.tu-chemnitz.de > * centos-sclo-sclo: mirror.softaculous.com > * epel: mirror.nextlayer.at > * extras: mirror.imt-systems.com > * updates: centos.mirror.iphh.net > Installed Packages > Name : rpm > Arch : x86_64 > Version : 4.11.3 > Release : 48.el7_9 > Size : 2.5 M > Repo : installed >>From repo : updates > Summary : The RPM package management system > URL : http://www.rpm.org/ > License : GPLv2+ > Description : The RPM Package Manager (RPM) is a powerful command line driven > : package management system capable of installing, uninstalling, > : verifying, querying, and updating software packages. Each software > : package consists of an archive of files along with information about > : the package like its version, a description, etc. > > # yum info dwarves > Loaded plugins: fastestmirror > Loading mirror speeds from cached hostfile > * base: de.mirrors.clouvider.net > * centos-sclo-rh: ftp.tu-chemnitz.de > * centos-sclo-sclo: ftp.antilo.de > * epel: mirror.de.leaseweb.net > * extras: mirror.imt-systems.com > * updates: centos.mirror.iphh.net > Installed Packages > Name : dwarves > Arch : x86_64 > Version : 1.10 > Release : 1.el7 > Size : 199 k > Repo : installed >>From repo : epel > Summary : Debugging Information Manipulation Tools > URL : http://oops.ghostprotocols.net:81/blog > License : GPLv2 > Description : dwarves is a set of tools that use the debugging information inserted in > : ELF binaries by compilers such as GCC, used by well known debuggers such as > : GDB, and more recent ones such as systemtap. > : > : Utilities in the dwarves suite include pahole, that can be used to find > : alignment holes in structs and classes in languages such as C, C++, but not > : limited to these. > : > : It also extracts other information such as CPU cacheline alignment, helping > : pack those structures to achieve more cache hits. > : > : A diff like tool, codiff can be used to compare the effects changes in source > : code generate on the resulting binaries. > : > : Another tool is pfunct, that can be used to find all sorts of information about > : functions, inlines, decisions made by the compiler about inlining, etc. > > > > Regards, > Marco Passerini > _______________________________________________ > CentOS mailing list > CentOS at centos.org > https://lists.centos.org/mailman/listinfo/centos