Bug #5362
closedosmo-cbc package build failure on Debian 10 + Ubuntu 18.04 + Raspbian 10
100%
Description
https://build.opensuse.org/build/network:osmocom:nightly/Debian_10/i586/osmo-cbc/_log
At first, this looks puzzling:
[ 213s] [424/488] installing libulfius2.5-2.5.2-4 [ 233s] [438/488] installing libulfius-dev-2.5.2-4 ... [ 465s] checking for ULFIUS... no
At second sight, this actually is missing systemd, which is a dependency of yder, which is a dependency of ulfius:
[ 466s] configure:9311: checking for ULFIUS [ 466s] configure:9318: $PKG_CONFIG --exists --print-errors "libulfius" [ 466s] Package systemd was not found in the pkg-config search path. [ 466s] Perhaps you should add the directory containing `systemd.pc' [ 466s] to the PKG_CONFIG_PATH environment variable [ 466s] Package 'systemd', required by 'libyder', not found [ 466s] configure:9321: $? = 1 [ 466s] configure:9335: $PKG_CONFIG --exists --print-errors "libulfius" [ 466s] Package systemd was not found in the pkg-config search path. [ 466s] Perhaps you should add the directory containing `systemd.pc' [ 466s] to the PKG_CONFIG_PATH environment variable [ 466s] Package 'systemd', required by 'libyder', not found [ 466s] configure:9338: $? = 1 [ 466s] configure:9352: result: no [ 466s] Package 'systemd', required by 'libyder', not found [ 466s] configure:9368: error: Package requirements (libulfius) were not met: [ 466s] [ 466s] Package 'systemd', required by 'libyder', not found [ 466s] [ 466s] Consider adjusting the PKG_CONFIG_PATH environment variable if you [ 466s] installed software in a non-standard prefix. [ 466s] [ 466s] Alternatively, you may set the environment variables ULFIUS_CFLAGS [ 466s] and ULFIUS_LIBS to avoid the need to call pkg-config. [ 466s] See the pkg-config man page for more details.
As the packages are upstream Debian 10, there seems to be a dependency problem in Debian ?
Updated by laforge almost 2 years ago
osmo-remsim has the same problem:
https://build.opensuse.org/package/live_build_log/network:osmocom:nightly/osmo-remsim/Debian_10/i586
Updated by laforge almost 2 years ago
- Subject changed from osmo-cbc package build failure on Debian 10 to osmo-cbc package build failure on Debian 10 + Ubuntu 18.04
Updated by laforge almost 2 years ago
Trying to work around by pre-installing the 'systemd' package on OBS:
### 2021-12-19: hwelte (yder Requires.private systemd / https://osmocom.org/issues/5362) %if %_repository == "Debian_10" || %_repository == "xUbuntu_18.04" Preinstall: systemd %endif
Updated by laforge almost 2 years ago
- Status changed from New to In Progress
- % Done changed from 0 to 30
also contacted the upstream maintainer about this via private e-mail. Seems a bit odd that we are the first ones to run into this for ancient oldstable ?!?
the work-around seems to work for Debian 10, but not for Ubuntu 18.04:
https://build.opensuse.org/build/network:osmocom:latest/xUbuntu_18.04/x86_64/osmo-cbc/_log
Updated by laforge almost 2 years ago
- Subject changed from osmo-cbc package build failure on Debian 10 + Ubuntu 18.04 to osmo-cbc package build failure on Debian 10 + Ubuntu 18.04 + Raspbian 10
Updated by laforge almost 2 years ago
17:43 < LaF0rge> I think the easiest to reproduce the problem would be to upload any random small program using ulfius to OBS and mark it to be built for Debian 10, Raspbian 10 or Ubuntu 18.04 17:44 < LaF0rge> if you're using sbuild/schroot there might be a chance that 'systemd' is already pre-installed in that chroot and you won't see the problem 17:44 < LaF0rge> [where can I find a list of packages pre-installed to a schroot?] 17:46 < LaF0rge> I'll try to create a small package without any further dependencies 18:07 < LaF0rge> babelouest: https://gitea.sysmocom.de/hwelte/ulfius-hello-world 18:07 < LaF0rge> I'll push that to OBS now and I would be certain it fails on the above-mentioned distros 18:07 < LaF0rge> for reasons explained in the mails... 18:19 < LaF0rge> indeed, it does, as expected: https://build.opensuse.org/package/show/home:laforge/ulfius-hello-world 18:21 < LaF0rge> succeeds on debian 11, fails on debian 10. Becuase yder in debian 10 has a broken entry in the pkg-config file (Requires.private: systemd while not listing systemd in its 'debian/control' dependencies
Updated by osmith almost 2 years ago
- Status changed from In Progress to Resolved
- % Done changed from 30 to 100
As discussed, the workaround is good enough and as this is not security related, it's not worth/not possible trying to get it fixed in oldstable.
the work-around seems to work for Debian 10, but not for Ubuntu 18.04:
The error message from Ubuntu 18.04 was a bit different:
[ 235s] configure:12590: checking for ULFIUS [ 235s] configure:12597: $PKG_CONFIG --exists --print-errors "libulfius" [ 235s] Package libulfius was not found in the pkg-config search path. [ 235s] Perhaps you should add the directory containing `libulfius.pc' [ 235s] to the PKG_CONFIG_PATH environment variable [ 235s] No package 'libulfius' found [ 235s] configure:12600: $? = 1 [ 235s] configure:12614: $PKG_CONFIG --exists --print-errors "libulfius" [ 235s] Package libulfius was not found in the pkg-config search path. [ 235s] Perhaps you should add the directory containing `libulfius.pc' [ 235s] to the PKG_CONFIG_PATH environment variable [ 235s] No package 'libulfius' found [ 235s] configure:12617: $? = 1 [ 235s] configure:12631: result: no [ 235s] No package 'libulfius' found [ 235s] configure:12647: error: Package requirements (libulfius) were not met: [ 235s] [ 235s] No package 'libulfius' found [ 235s]
This happened even though a libulfius dev package was installed. Looks like the libulfius version shipped in ubuntu 18.04 was so old that it did not have a libulfius.pc file.
I've worked around this by using the newer libulfius version we build in OBS, I've enabled it for Ubuntu 18.04.
Now osmo-cbc and osmo-remsim build for all distributions again.