On Thu, Jun 28, 2018 at 3:53 PM, Burton, Ross <ross.bur...@intel.com> wrote: > Hi Giordan, > > https://wiki.yoctoproject.org/wiki/TipsAndTricks/Packaging_Prebuilt_Libraries > might be helpful to you. > > One useful thing would be to show us exactly what files are being > installed (and what files are symlinks). It sounds like xrootd is > messing up library installation...
Based on the logs, it looks like xrootd is installing both versioned shared libraries (e.g. "libXrdXml.so" is presumably a symlink to a real library named libXrdXml.so.<something> ?) and it's ALSO installing a set of plug-ins (e.g. "libXrdThrottle-4.so"). If so, then the real problem seems to be that the plug-ins are being installed in /usr/lib. To avoid tripping up the default packaging rules and QA tests, plug-ins should ideally be installed somewhere other than ${base_libdir} or ${libdir}. If you can fix the build so that the plug-ins (just the plug-ins, not the versioned shared libraries) get installed to a different directory then I guess you will be able remove the packaging rules over-rides and the QA errors will go away. If you can't fix the build to install the plug-ins in another directory, then you could keep the packaging rules over-rides that you have already and just ignore the "dev-so" QA test (unlike the "dev-elf" QA test, which you should never ignore, the consequences of ignoring the "dev-so" QA test are fairly benign - you will end up with .so symlinks in the run-time package, which doesn't do any real harm). > On 28 June 2018 at 22:19, Giordon Stark <kra...@gmail.com> wrote: >> Hi, >> >> I've read the emails in this mailing list. I'm mostly struggling to >> understand the situation for which "-dev package contains non-symlink .so" >> occurs. I understand that normally, one expects "*.so" files installed as >> part of the package, with symlinks to these versions in the "-dev" package. >> What I don't understand is the fix, and why this problem occurs in the first >> place. >> >> The recipe I'm working on in question is here: xrootd_4.8.3.bb (if this link >> doesn't work in the future, it's probably because I've merged this to >> master). This recipe is to install this piece of code: >> https://github.com/xrootd/xrootd. >> >> Here's an example of the errors: >> >> ERROR: xrootd-4.8.3-r0 do_package_qa: QA Issue: -dev package contains >> non-symlink .so: xrootd-dev path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd-dev/usr/lib/libXrdThrottle-4.so' >> -dev package contains non-symlink .so: xrootd-dev path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd-dev/usr/lib/libXrdSecsss-4.so' >> -dev package contains non-symlink .so: xrootd-dev path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd-dev/usr/lib/libXrdSecunix-4.so' >> -dev package contains non-symlink .so: xrootd-dev path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd-dev/usr/lib/libXrdSecpwd-4.so' >> -dev package contains non-symlink .so: xrootd-dev path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd-dev/usr/lib/libXrdN2No2p-4.so' >> -dev package contains non-symlink .so: xrootd-dev path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd-dev/usr/lib/libXrdSec-4.so' >> -dev package contains non-symlink .so: xrootd-dev path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd-dev/usr/lib/libXrdFileCache-4.so' >> -dev package contains non-symlink .so: xrootd-dev path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd-dev/usr/lib/libXrdSsiLog-4.so' >> -dev package contains non-symlink .so: xrootd-dev path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd-dev/usr/lib/libXrdCksCalczcrc32-4.so' >> -dev package contains non-symlink .so: xrootd-dev path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd-dev/usr/lib/libXrdBwm-4.so' >> -dev package contains non-symlink .so: xrootd-dev path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd-dev/usr/lib/libXrdBlacklistDecision-4.so' >> -dev package contains non-symlink .so: xrootd-dev path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd-dev/usr/lib/libXrdClProxyPlugin-4.so' >> -dev package contains non-symlink .so: xrootd-dev path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd-dev/usr/lib/libXrdSecProt-4.so' >> -dev package contains non-symlink .so: xrootd-dev path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd-dev/usr/lib/libXrdOssSIgpfsT-4.so' >> -dev package contains non-symlink .so: xrootd-dev path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd-dev/usr/lib/libXrdSsi-4.so' >> -dev package contains non-symlink .so: xrootd-dev path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd-dev/usr/lib/libXrdPss-4.so' >> -dev package contains non-symlink .so: xrootd-dev path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd-dev/usr/lib/libXrdXrootd-4.so' >> [dev-elf] >> ERROR: xrootd-4.8.3-r0 do_package_qa: QA run found fatal errors. Please >> consider fixing them. >> ERROR: xrootd-4.8.3-r0 do_package_qa: Function failed: do_package_qa >> ERROR: Logfile of failure stored in: >> /local/d4/gstark/poky/build/tmp/work/aarch64-poky-linux/xrootd/4.8.3-r0/temp/log.do_package_qa.28174 >> ERROR: Task >> (/local/d4/gstark/meta-l1calo/recipes-core/root/xrootd_4.8.3.bb:do_package_qa) >> failed with exit code '1' >> >> Then, when I add these lines to the recipe: >> >> FILES_SOLIBSDEV = "" >> FILES_${PN} += "${libdir}/*.so" >> >> I find that nothing is really fixed. It seems to be a similar error, but >> with different files now: >> >> ERROR: xrootd-4.8.3-r0 do_package_qa: QA Issue: non -dev/-dbg/nativesdk- >> package contains symlink .so: xrootd path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd/usr/lib/libXrdXml.so' >> non -dev/-dbg/nativesdk- package contains symlink .so: xrootd path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd/usr/lib/libXrdSsiLib.so' >> non -dev/-dbg/nativesdk- package contains symlink .so: xrootd path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd/usr/lib/libXrdCryptoLite.so' >> non -dev/-dbg/nativesdk- package contains symlink .so: xrootd path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd/usr/lib/libXrdAppUtils.so' >> non -dev/-dbg/nativesdk- package contains symlink .so: xrootd path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd/usr/lib/libXrdCrypto.so' >> non -dev/-dbg/nativesdk- package contains symlink .so: xrootd path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd/usr/lib/libXrdPosix.so' >> non -dev/-dbg/nativesdk- package contains symlink .so: xrootd path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd/usr/lib/libXrdUtils.so' >> non -dev/-dbg/nativesdk- package contains symlink .so: xrootd path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd/usr/lib/libXrdSsiShMap.so' >> non -dev/-dbg/nativesdk- package contains symlink .so: xrootd path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd/usr/lib/libXrdCl.so' >> non -dev/-dbg/nativesdk- package contains symlink .so: xrootd path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd/usr/lib/libXrdClient.so' >> non -dev/-dbg/nativesdk- package contains symlink .so: xrootd path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd/usr/lib/libXrdServer.so' >> non -dev/-dbg/nativesdk- package contains symlink .so: xrootd path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd/usr/lib/libXrdPosixPreload.so' >> non -dev/-dbg/nativesdk- package contains symlink .so: xrootd path >> '/work/aarch64-poky-linux/xrootd/4.8.3-r0/packages-split/xrootd/usr/lib/libXrdFfs.so' >> [dev-so] >> ERROR: xrootd-4.8.3-r0 do_package_qa: QA run found fatal errors. Please >> consider fixing them. >> ERROR: xrootd-4.8.3-r0 do_package_qa: Function failed: do_package_qa >> ERROR: Logfile of failure stored in: >> /local/d4/gstark/poky/build/tmp/work/aarch64-poky-linux/xrootd/4.8.3-r0/temp/log.do_package_qa.30048 >> ERROR: Task >> (/local/d4/gstark/meta-l1calo/recipes-core/root/xrootd_4.8.3.bb:do_package_qa) >> failed with exit code '1' >> >> I'm getting a bit confused as these errors didn't show up the first time. >> And I suppose part of the confusing is about packaging vs installation. >> >> Thanks, >> >> Giordon >> -- >> Giordon Stark >> >> -- >> _______________________________________________ >> yocto mailing list >> yocto@yoctoproject.org >> https://lists.yoctoproject.org/listinfo/yocto >> > -- > _______________________________________________ > yocto mailing list > yocto@yoctoproject.org > https://lists.yoctoproject.org/listinfo/yocto -- _______________________________________________ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto