This is an error observed with TMPDIR set to /ab/cde/tmp: ERROR: libxml-parser-perl-native: chrpath command failed with exit code 7: /ab/cde/tmp/work/x86_64-linux/libxml-parser-perl-native/libxml-parser-perl-native-2.41-r3/sysroot-destdir/ab/cde/tmp/sysroots/x86_64-linux/usr/lib/perl-native/perl/5.14.3/auto/XML/Parser/Expat/Expat.so: RPATH=/ab/cde/tmp/sysroots/x86_64-linux/usr/lib new rpath '$ORIGIN/../../../../../../../../../usr/lib' too large; maximum length 41 Possible workarounds: 1.) Set TMPDIR to /ab/cdef/tmp to gain an extra byte. 2.) Remove the trailing /usr/lib from the new rpath, because the object in question also resides under /usr/lib.
We should add a check to sanity.bbclass for paths which are too short and report these cases to the user.
Created attachment 1106 [details] patch implementing workaround 2 With this patch I could build a working image without changing the path.
I agree that a sanity check would be a good thing, but I don't think it's easy to guess the right value, without doing many world builds. With my patch the problem should be gone for many or possibly all cases below /usr/lib, as they can use 14 extra bytes.
Andreas, can you please submit your RFC patch to the communinty and see where it goes, I am going to assign you the owner of this bug, I think your pathc makes sense, and if you can add a sanity check that would be great also. Please mark the but ACCPETED or IN PROGRESS as you see fit.
Fixed in master: http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=6fcb96076ca60ef30062fda0ff8308cc840ab07d
Verified in poky master:1b636173ca88e5ccca1992f9a12367a1189fa674