[yocto] Magic/File problems
jani.uusi-rantala at nokia.com
jani.uusi-rantala at nokia.com
Tue Aug 9 08:57:46 PDT 2011
I was experiencing same issue today with latest Yocto master ca394457c5d7b2cb4544de7ce2d29008ec6173ae (in Fedora R15):
| error: magic_load(ms, /usr/share/misc/magic) failed: File 5.4 supports only version 7 magic files. `/usr/share/misc/magic.mgc' is version 8
| rpmbuild.real: rpmfc.c:1154: rpmfcClassify: Assertion `mg != ((void *)0)' failed.
This seems to be a problem with rpmbuild using the wrong magic file from rpmfcClassify. This kind of simple fix in package_rpm.class appears to work:
Defines _rpmfc_magic_path variable:
diff --git a/meta/classes/package_rpm.bbclass b/meta/classes/package_rpm.bbclass
index ddbfc09..3f00857 100644
--- a/meta/classes/package_rpm.bbclass
+++ b/meta/classes/package_rpm.bbclass
@@ -822,6 +822,8 @@ python do_package_rpm () {
targetvendor = bb.data.getVar('TARGET_VENDOR', d, True)
pkgwritedir = bb.data.expand('${PKGWRITEDIRRPM}/${PACKAGE_ARCH}', d)
pkgarch = bb.data.expand('${PACKAGE_ARCH}', d)
+ magicfile = bb.data.expand('${STAGING_DIR_NATIVE}/usr/share/misc/magic.mgc', d)
+
bb.mkdirhier(pkgwritedir)
os.chmod(pkgwritedir, 0755)
@@ -834,7 +836,7 @@ python do_package_rpm () {
cmd = cmd + " --define '__find_provides " + outprovides + "'"
cmd = cmd + " --define '_unpackaged_files_terminate_build 0'"
cmd = cmd + " --define 'debug_package %{nil}'"
+ cmd = cmd + " --define '_rpmfc_magic_path " + magicfile + "'"
cmd = cmd + " -bb " + outspecfile
- Jani
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/yocto/attachments/20110809/e173ec74/attachment.html>
More information about the yocto
mailing list