symbol lookup error: /usr/sbin/ModemManager: undefined symbol: mm_location_3gpp_set_mobile_country_code after build

Aleksander Morgado aleksander at
Fri Oct 28 09:46:32 UTC 2022


> I have been using MM 1.16.6 successfully for the last year for a project, and recently I needed to install it on a new server, but discovered that version
> 1.16 is no longer available in Ubuntu apt repositories, only 1.12 and 1.18 are available. Unfortunately, 1.12 doesn’t work for me, and 1.18 has this bug that I
> reported that makes it unstable for my project:

That is really unfortunate, if someone can help try to debug this
issue further, it would be great. According to the comment I added in
that issue it could be related to how the inhibition process leaves a
port around open in the old modem object.

> I have been trying to get a modemanager 1.16 .deb file to install on my Ubuntu 20.04 system, but was not able to find one online, so I decided to compile from source.
> I have ran the following, as per this build guide:
>   $ wget
>   $ tar -Jxvf ModemManager-1.16.6.tar.xz
>   $ cd ModemManager-1.16.6
>   $ ./configure --prefix=/usr --sysconfdir=/etc --libdir=/usr/lib/x86_64-linux-gnu --with-qmi --with-mbim --with-suspend-resume=systemd
>   $ make

And "sudo make install" I hope?

> but systemd fails to load the service, and if I try manually I get this:
> $ /usr/sbin/ModemManager
> /usr/sbin/ModemManager: symbol lookup error: /usr/sbin/ModemManager: undefined symbol: mm_location_3gpp_set_mobile_country_code

This looks like the MM program is trying to use an older library in
the system, not really a problem in the MM build I'm afraid.

> I have also tried removing these flags:
> --prefix=/usr --sysconfdir=/etc --libdir=/usr/lib/x86_64-linux-gnu

If you tried to remove those flags it could very well be that you
installed under /usr/local also and then there's a mix of libraries
and binaries around.

More information about the ModemManager-devel mailing list