diff options
authorChangqing Li <>2020-05-08 10:30:31 +0800
committerRichard Purdie <>2020-05-09 18:55:44 +0100
commit56fa74497393a10f751d01c600c1936761e00294 (patch)
parentf94511fe5c163de8fb34d00ff3ba995437c3922c (diff)
lib/oe/package_manager: update default rpm config %_prefer_color
* %_prefer_color is used by rpm to determine which color's ELF file is preferred to be installed. Here are file colors: 0 is unknown or other 1 is Elf32 2 is Elf64 4 is MIPS64 n32 (this color is added by oe-core's patch) if default value set to 7, all colors are preferred color, always be last-in-wins. For this scenario, when we have 64bits python3 installed first, then install 32bits python3 later, 64bits python3 will be overwrited, and sys.path will point to /usr/lib, not /usr/lib64, this may cause some python3 modules not work. so fixed by remove setting of default value 7, and use default value 2 of rpm * other distro like fedora also use the default %_prefer_color 2 Signed-off-by: Changqing Li <> Signed-off-by: Richard Purdie <>
1 files changed, 0 insertions, 2 deletions
diff --git a/meta/lib/oe/ b/meta/lib/oe/
index b0660411ea..c055d2b0f7 100644
--- a/meta/lib/oe/
+++ b/meta/lib/oe/
@@ -805,8 +805,6 @@ class RpmPM(PackageManager):
open(platformconfdir + "macros", 'w').write("%_transaction_color 7\n")
if self.d.getVar('RPM_PREFER_ELF_ARCH'):
open(platformconfdir + "macros", 'a').write("%%_prefer_color %s" % (self.d.getVar('RPM_PREFER_ELF_ARCH')))
- else:
- open(platformconfdir + "macros", 'a').write("%_prefer_color 7")
if self.d.getVar('RPM_SIGN_PACKAGES') == '1':
signer = get_signer(self.d, self.d.getVar('RPM_GPG_BACKEND'))