[Debian-on-mobile-maintainers] Trouble building libqmi (dpkg-gensymbols unhappy)
Arnaud Ferraris
arnaud.ferraris at gmail.com
Fri Feb 18 07:41:12 GMT 2022
Hi Evangelos,
Le 18/02/2022 à 07:56, Evangelos Ribeiro Tzaras a écrit :
> Hi,
>
> I'm currently trying to backport MM and friends into pureOS (to see if
> qmi voice management fixes an issue with [Calls]) but I'm having
> trouble building libqmi:
>
> dh_makeshlibs -a
> dpkg-gensymbols: error: some new symbols appeared in the symbols file:
> see diff output below
> dpkg-gensymbols: warning: debian/libqmi-glib5/DEBIAN/symbols doesn't
> match completely debian/libqmi-glib5.symbols
> --- debian/libqmi-glib5.symbols (libqmi-glib5_1.30.4-1_amd64)
> +++ dpkg-gensymbolsS9I87O 2022-02-18 06:57:13.066218572 +0100
> @@ -564,6 +564,7 @@
> qmi_device_expected_data_format_get_type at Base 1.14.0
> qmi_device_get_expected_data_format at Base 1.14.0
> qmi_device_get_file at Base 1.6.0
> + qmi_device_get_node at Base 1.30.4-1
> qmi_device_get_path at Base 1.6.0
> qmi_device_get_path_display at Base 1.6.0
> qmi_device_get_service_version_info at Base 1.6.0
> @@ -574,11 +575,14 @@
> qmi_device_list_links at Base 1.28.6
> qmi_device_new at Base 1.6.0
> qmi_device_new_finish at Base 1.6.0
> + qmi_device_new_from_node at Base 1.30.4-1
> + qmi_device_new_from_node_finish at Base 1.30.4-1
> qmi_device_open at Base 1.6.0
> qmi_device_open_finish at Base 1.6.0
> qmi_device_open_flags_build_string_from_mask at Base 1.10.0
> qmi_device_open_flags_get_type at Base 1.10.0
> qmi_device_peek_file at Base 1.6.0
> + qmi_device_peek_node at Base 1.30.4-1
> qmi_device_release_client at Base 1.6.0
> qmi_device_release_client_finish at Base 1.6.0
> qmi_device_release_client_flags_build_string_from_mask at Base 1.10.0
> @@ -653,6 +657,8 @@
> qmi_endpoint_parse_buffer at Base 1.24.6
> qmi_endpoint_qmux_get_type at Base 1.24.6
> qmi_endpoint_qmux_new at Base 1.24.6
> + qmi_endpoint_qrtr_get_type at Base 1.30.4-1
> + qmi_endpoint_qrtr_new at Base 1.30.4-1
> qmi_endpoint_send at Base 1.24.6
> qmi_endpoint_setup_indications at Base 1.24.6
> qmi_endpoint_setup_indications_finish at Base 1.24.6
> dh_makeshlibs: error: failing due to earlier errors
> make: *** [debian/rules:10: binary] Error 25
>
>
> After checking with `nm` I can verify that the symbols are indeed in
> `debian/tmp/usr/lib/x86_64-linux-gnu/libqmi-glib.so.5.8.0` but not in
> `debian/libqmi-glib5.symbols`. However the builds went through on
> buildd, so I'm wondering what the problem is.
>
>
> Some more digging into those symbols shows:
> - `qmi_device_get_node()` `qmi_device_new_from_node()`
> `qmi_device_new_from_node_finish()` `qmi_device_peek_node()`
> (`src/libqmi-glib/qmi-device.h`) have been there since 1.28 (judging by
> the gtk-doc "Since" annotations)
> - `qmi_endpoint_qrtr_get_type()` and `qmi_endpoint_qrtr_new()` don't
> have gtk-doc annotations, but checking with `git blame` etc the first
> tag it was included is `1.26-rc1`
>
>
> Any idea why
> a) those symbols are not in the symbols file?
Those symbols are only present when building with QRTR support using
`libqrtr-glib`, which is in the NEW queue. Once this lib is accepted in
the archive, I'll release a new libqmi package with QRTR support
enabled. The symbols file will be adapted then.
> b) buildd does not care about them missing?
buildd starts from a clean environment. As the current libqmi package
doesn't build-depend on libqrtr-glib-dev for obvious reasons, it doesn't
get installed and therefore not detected by the configure script.
> c) but my system (fully upgraded testing/sid) cares about them missing?
I assume you have previously built and installed `libqrtr-glib-dev`?
Cheers,
Arnaud
>
> I wasn't sure if this is an issue with the packaging or not (especially
> because buildd is happy) I wanted to reach out first before opening a
> bug. The attached patch let's builds succeed on my end (and I'm happy
> to open a MR should this be useful)
>
> [Calls] https://gitlab.gnome.org/GNOME/calls/-/issues/310
>
> Cheers
>
>
> _______________________________________________
> Debian-on-mobile-maintainers mailing list
> Debian-on-mobile-maintainers at alioth-lists.debian.net
> https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/debian-on-mobile-maintainers
More information about the Debian-on-mobile-maintainers
mailing list