Help rpmbuild run to completion

General support questions
Post Reply
phdlinux
Posts: 3
Joined: 2018/05/26 20:18:54

Help rpmbuild run to completion

Post by phdlinux » 2018/05/26 20:47:30

I would like to make my own RPM's for two versions of the package lz4: i686 and x86_64. The system is CentOS Linux release 7.5.1804 (Core); the user is not very experienced.

I found a suitable rpm source online: lz4-1.8.2-1.fc29.src.rpm. Saying "rpmbuild --rebuild lz4-1.8.2-1.fc29.src.rpm" does something, but the result is not an rpm. As shown in the complete transcript attached, the trouble in context appears to be here:

Code: Select all

lz4 installation completed
make[1]: Leaving directory `/root/rpmbuild/BUILD/lz4-1.8.2/programs'
+ %ldconfig_scriptlets libs
/var/tmp/rpm-tmp.odyWTp: line 63: fg: no job control
error: Bad exit status from /var/tmp/rpm-tmp.odyWTp (%install)
Online searching suggests that the error message about job control is a distraction, and that the real problem is that the macro %ldconfig_scriptlets has not been properly expanded. I went looking for ways to add a suitable macro definition to my system without success.

Q1: What should I try next?
Q2: If and when this process actually produces a usable rpm, it will likely be of the x86_64 variety, because that is the native type of my system. But apparently some system components (including systemd.i686, which sounds important) want the i686 flavour instead. What steps are necessary to build the i686 version and install it alongside its x86_64 partner?

Thanks!
Attachments
rpm-tmp.odyWTp.txt
Script file named in error messages quoted in the OP
(3.33 KiB) Downloaded 56 times
transcript.txt
Full transcript of failed rpmbuild attempt
(6.34 KiB) Downloaded 59 times

User avatar
TrevorH
Site Admin
Posts: 33202
Joined: 2009/09/24 10:40:56
Location: Brighton, UK

Re: Help rpmbuild run to completion

Post by TrevorH » 2018/05/26 23:10:03

You appear to be doing something odd. Why are you trying to do this when CentOS 7.5 already supplies both 32 and 64 bit lz4 packages and they are a yum install lz4 away?

Code: Select all

# yum list lz4\*
Loaded plugins: priorities
694 packages excluded due to repository priority protections
Installed Packages
lz4.i686                                                   1.7.5-2.el7                                         @cr 
lz4.x86_64                                                 1.7.5-2.el7                                         @cr 
The future appears to be RHEL or Debian. I think I'm going Debian.
Info for USB installs on http://wiki.centos.org/HowTos/InstallFromUSBkey
CentOS 5 and 6 are deadest, do not use them.
Use the FAQ Luke

phdlinux
Posts: 3
Joined: 2018/05/26 20:18:54

Re: Help rpmbuild run to completion

Post by phdlinux » 2018/05/27 16:01:20

"Why" is a dangerous question. I'll answer briefly, to show my gratitude for your response.

It all started with "sudo yum update". There were hundreds of things to do, but a multilib collision involving lz4 stopped yum from doing any transactions at all. My system had an installed copy of 64-bit lz4 with a version number higher than the one in the repos. That came from a third-party repo I added to bring in an excellent package called xpra (see xpra.org). Precisely why my base system now thinks it needs the i686 version of lz4 is something I don't understand ... but the xpra repo only provides x86_64, and the base repo version numbers (which agree -- good) are lower.

My question was part of an attempt to solve this problem by manually compiling shiny new matching versions of lz4 for both architectures.

Your response inspired the idea of using yum to explicitly downgrade my copy of lz4.x86_64 to the version in the base repo. I did that, and it appears the key third-party xpra package still works. Also, "sudo yum update" now runs to completion successfully.

This exchange did not answer the question I posted (sorry, future searchers!), but it did allow me to resolve the underlying issue. Thank you very much!

User avatar
avij
Retired Moderator
Posts: 3046
Joined: 2010/12/01 19:25:52
Location: Helsinki, Finland
Contact:

Re: Help rpmbuild run to completion

Post by avij » 2018/05/27 16:52:59

There's also a chance that you don't really need the 32bit versions of those packages at all. Please see a relevant forum topic.

phdlinux
Posts: 3
Joined: 2018/05/26 20:18:54

Re: Help rpmbuild run to completion

Post by phdlinux » 2018/05/27 18:40:25

Thanks, the relevant post you cite is one that I had seen before. I went so far as to enter the suggested command, sudo yum remove '*.i686' in order to see what the consequences would be. The list of other things that would get deleted made me too nervous to follow through. (Lacking full sysadmin skills makes me uncertain about what things I "really need". Certainly there were things on the list that I recognize as important.)

In case you're interested, here's the list:

Code: Select all

audit-libs
bzip2-libs
cracklib
elfutils-libelf
elfutils-libs
glibc
libattr
libcap
libcap-ng
libdb
libgcc
libgcrypt
libgpg-error
libselinux
libsepol
libstdc++
lz4
nss-softokn-freebl
pam
pcre
rdma-core
systemd-libs
xz-libs
zlib

Post Reply