Build C7 Packages For I686 Using Mock
This might be an embarrassingly simple question. How are people building multi-arch library packages on CentOS 7? On older releases one could “mock -r epel-6-i386” and “mock -r epel-6-x86_64” to build a library twice. With no 32-bit release, there’s no epel-7-i386 target for mock. Specifying –target=i386 or –arch-i386 both fail.
Do we have to set up the environment manually and rpm –rebuild inside the mock root?
5 thoughts on - Build C7 Packages For I686 Using Mock
copy the epel-7-x86_64.cfg file to epel-7-i386, and then tweak. You can set the main CentOS repo to http://buildlogs.CentOS.org/c7.00.02/ or point it to the puias repos.
Peter
Hi,
Here’s how my epel-7-i386.cfg mock file looks like:
http://fpaste.org/164110/19877702/raw/
Do note the 32bit packages are unofficial and unsupported. RedHat does not support 32bit in EL7.
HTH
Lucian Nux!
12/30/14
to CentOS
Right, but the CentOS project itself produces multi-arch libraries, so I
guess what I’m really asking is, “how?”
We are almost ready to release an i686 version of C7 .. but for mock, all our build root is available publicly here:
http://buildlogs.CentOS.org/
c7-* directories … c7.00.* are the base build for the 7.0.1406 release
… c7-updates is all updates after the 7.0.1406 release.
All the i686 packages built are in there somewhere.
For example:
http://buildlogs.CentOS.org/c7-updates/kernel/20141224145219/3.10.0-123.13.2.el7.i686/
That is the 3.10.0-123.13.2.el7.i686 kernel.
Thanks, Johnny Hughes
Thanks for the help, Johnny. I’ve got the packages that I needed built.
Still, I’m surprised that building i686 packages requires that there is an i686 release. Especially since there were i686 packages for multi-arch libraries before there was a proper i686 release of CentOS. Was there, internally, a full build of all the required i686 platform to support the multi-arch builds? Curiosity compels me to ask. :)