Bug 5143

Summary: systemd: many /lib/libfoo requires a shared library under exec_prefix (/usr) warnings
Product: [Build System, Metadata & Runtime] OE-Core Reporter: Wenzong.Fan <wenzong.fan>
Component: coreAssignee: Mark Hatle <mark.hatle>
Status: RESOLVED WONTFIX QA Contact:
Severity: normal    
Priority: Low CC: meta.mr.watcher, meta.watcher, richard.purdie
Version: 1.5   
Target Milestone: Future   
Hardware: x86   
OS: Multiple   
See Also: https://bugzilla.yoctoproject.org/show_bug.cgi?id=7040
Whiteboard:
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: No (bug/feature does not impact docs)

Description Wenzong.Fan 2013-09-09 07:08:04 UTC
WARNING: QA Issue: systemd: /lib/systemd/systemd-udevd, installed in the base_prefix, requires a shared library under exec_prefix (/usr): libkmod.so.2 => /usr/lib/libkmod.so.2 (0xdead2000)
WARNING: QA Issue: systemd: -utils/bin/udevadm, installed in the base_prefix, requires a shared library under exec_prefix (/usr): libkmod.so.2 => /usr/lib/libkmod.so.2 (0xdead2000)
WARNING: QA Issue: systemd: /lib/systemd/systemd-initctl, installed in the base_prefix, requires a shared library under exec_prefix (/usr): libdbus-1.so.3 => /usr/lib/libdbus-1.so.3 (0xdead2000)
WARNING: QA Issue: systemd: /lib/systemd/systemd-fsck, installed in the base_prefix, requires a shared library under exec_prefix (/usr): libdbus-1.so.3 => /usr/lib/libdbus-1.so.3 (0xdead1000)
WARNING: QA Issue: systemd: /lib/systemd/systemd-machined, installed in the base_prefix, requires a shared library under exec_prefix (/usr): libdbus-1.so.3 => /usr/lib/libdbus-1.so.3 (0xdead2000)
WARNING: QA Issue: systemd: /lib/systemd/systemd-hostnamed, installed in the base_prefix, requires a shared library under exec_prefix (/usr): libdbus-1.so.3 => /usr/lib/libdbus-1.so.3 (0xdead1000)
WARNING: QA Issue: systemd: /lib/systemd/systemd, installed in the base_prefix, requires a shared library under exec_prefix (/usr): libkmod.so.2 => /usr/lib/libkmod.so.2 (0xdead5000)
WARNING: QA Issue: systemd: /lib/systemd/systemd, installed in the base_prefix, requires a shared library under exec_prefix (/usr): libdbus-1.so.3 => /usr/lib/libdbus-1.so.3 (0xdead6000)
WARNING: QA Issue: systemd: /lib/systemd/systemd-journald, installed in the base_prefix, requires a shared library under exec_prefix (/usr): liblzma.so.5 => /usr/lib/liblzma.so.5 (0xdead5000)
WARNING: QA Issue: systemd: /lib/systemd/systemd-timedated, installed in the base_prefix, requires a shared library under exec_prefix (/usr): libdbus-1.so.3 => /usr/lib/libdbus-1.so.3 (0xdead1000)
WARNING: QA Issue: systemd: /lib/systemd/systemd-localed, installed in the base_prefix, requires a shared library under exec_prefix (/usr): libdbus-1.so.3 => /usr/lib/libdbus-1.so.3 (0xdead1000)
WARNING: QA Issue: systemd: /lib/systemd/systemd-cgroups-agent, installed in the base_prefix, requires a shared library under exec_prefix (/usr): libdbus-1.so.3 => /usr/lib/libdbus-1.so.3 (0xdead1000)
WARNING: QA Issue: systemd: /lib/systemd/systemd-update-utmp, installed in the base_prefix, requires a shared library under exec_prefix (/usr): libdbus-1.so.3 => /usr/lib/libdbus-1.so.3 (0xdead1000)
WARNING: QA Issue: systemd: /lib/systemd/systemd-modules-load, installed in the base_prefix, requires a shared library under exec_prefix (/usr): libkmod.so.2 => /usr/lib/libkmod.so.2 (0xdead1000)
WARNING: QA Issue: systemd: /lib/systemd/systemd-logind, installed in the base_prefix, requires a shared library under exec_prefix (/usr): libdbus-1.so.3 => /usr/lib/libdbus-1.so.3 (0xdead4000)
WARNING: QA Issue: systemd: /lib/systemd/systemd-bootchart, installed in the base_prefix, requires a shared library under exec_prefix (/usr): liblzma.so.5 => /usr/lib/liblzma.so.5 (0xdead6000)
WARNING: QA Issue: systemd: /bin/journalctl, installed in the base_prefix, requires a shared library under exec_prefix (/usr): liblzma.so.5 => /usr/lib/liblzma.so.5 (0xdead1000)
WARNING: QA Issue: systemd: /bin/loginctl, installed in the base_prefix, requires a shared library under exec_prefix (/usr): libdbus-1.so.3 => /usr/lib/libdbus-1.so.3 (0xdead1000)
WARNING: QA Issue: systemd: /bin/systemd-inhibit, installed in the base_prefix, requires a shared library under exec_prefix (/usr): libdbus-1.so.3 => /usr/lib/libdbus-1.so.3 (0xdead1000)
WARNING: QA Issue: systemd: /bin/systemctl, installed in the base_prefix, requires a shared library under exec_prefix (/usr): libdbus-1.so.3 => /usr/lib/libdbus-1.so.3 (0xdead2000)
WARNING: QA Issue: systemd: /bin/systemctl, installed in the base_prefix, requires a shared library under exec_prefix (/usr): liblzma.so.5 => /usr/lib/liblzma.so.5 (0xdead5000)
WARNING: QA Issue: systemd: /bin/machinectl, installed in the base_prefix, requires a shared library under exec_prefix (/usr): libdbus-1.so.3 => /usr/lib/libdbus-1.so.3 (0xdead1000)
WARNING: QA Issue: systemd: /lib/libgudev-1.0.so.0.1.3, installed in the base_prefix, requires a shared library under exec_prefix (/usr): libgio-2.0.so.0 => /usr/lib/libgio-2.0.so.0 (0xdead2000)
WARNING: QA Issue: systemd: /lib/libgudev-1.0.so.0.1.3, installed in the base_prefix, requires a shared library under exec_prefix (/usr): libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0xdead3000)
WARNING: QA Issue: systemd: /lib/libgudev-1.0.so.0.1.3, installed in the base_prefix, requires a shared library under exec_prefix (/usr): libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0xdead6000)
WARNING: QA Issue: systemd: /lib/libgudev-1.0.so.0.1.3, installed in the base_prefix, requires a shared library under exec_prefix (/usr): libffi.so.6 => /usr/lib/libffi.so.6 (0xdead7000)
WARNING: QA Issue: systemd: /lib/libgudev-1.0.so.0.1.3, installed in the base_prefix, requires a shared library under exec_prefix (/usr): libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0xdead8000)
WARNING: QA Issue: systemd: /lib/libsystemd-journal.so.0.11.1, installed in the base_prefix, requires a shared library under exec_prefix (/usr): liblzma.so.5 => /usr/lib/liblzma.so.5 (0xdead1000)

Reprocude steps:
1) Add more checking to meta-yocto/conf/distro/poky.conf
  - WARN_QA = "textrel files-invalid incompatible-license xorg-driver-abi libdir"
  + WARN_QA = "textrel files-invalid incompatible-license xorg-driver-abi libdir unsafe-references-in-binaries unsafe-references-in-scripts"

2) Enable systemd in local.conf:
  + DISTRO_FEATURES_append = " systemd"
  + VIRTUAL-RUNTIME_init_manager = "systemd"
  + DISTRO_FEATURES_BACKFILL_CONSIDERED = "sysvinit"

3) bitbake systemd
Comment 1 Ross Burton 2013-09-10 11:40:16 UTC
The systemd maintainers insist that splitting / and /usr is broken and so don't consider using lzma/kmod/etc a problem, and gudev for some reason is in /lib and that depends on glib.  I'd be very hesistant to move *all* of these libraries into /lib.

Personally I'm saying here "if you want to use separate / and /lib, you can't use systemd".
Comment 2 Richard Purdie 2013-09-10 11:51:22 UTC
As previously stated, until someone comes up with a well thought out plan of what should be in /lib and what should be in /usr/lib, I'm not entertaining moving anything else. We *cannot* try and do this piecemeal. Changing the priority to reflect this.
Comment 3 Mark Hatle 2017-08-03 21:28:47 UTC
See rationale in 5142.