unable to load externals: undefined symbol "__pow_finite" and similar

Bug #1939293 reported by IOhannes m zmoelnig
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
puredata (Ubuntu)
Fix Released
Undecided
Unassigned
Focal
Fix Released
Undecided
Unassigned

Bug Description

[Impact]

Pd-0.50.2-3 (as shipped with focal) is unable to load the external objects (plugins) shipped in the "puredata-extra" package (which is built from the same source package as "puredata" itself) due to a problem with some symbols that should be provided by libm.

The missing symbols are `__exp_finite`, `__log_finite`, `__logf_finite` and `__pow_finite`.
The affected externals are:
- bonk~
- choice
- fiddle~
- sigmund~

The problem appears to come from a change in the symbols when upgrading from glibc-2.30 to glibc-2.31 (e.g. see https://sourceware.org/pipermail/libc-alpha/2020-May/113773.html)

A simple rebuild of the package seems to fix the problem.

To trigger a rebuild I've added a debdiff that bumps the version number to "0.50.2-3build1~ubuntu20.04.1" (i hope this is the correct version scheme for such an upload).

[Test Plan]

A quick way to check whether the objects can be loaded is by running this script (after installing the "puredata-extra" package):

~~~
find /usr/lib/puredata/extra/*/ -name "*-help.pd" -exec pd -nrt -nogui -send "pd quit" {} ";"
~~~

I've attached the output of such a (failing) test run (note the lines starting with "error:")

[Where problems could occur]

The rebuild apparently fixes the problem, although a more correct fix would probably be to add "-lm" to the linker-flags when building the plugins.
(This is what upstream did for the Pd-0.51 release).
In order to keep the impact of my patch minimal, i have chosen to just trigger a rebuild.

ProblemType: Bug
DistroRelease: Ubuntu 20.04
Package: puredata-extra 0.50.2-3
ProcVersionSignature: Ubuntu 5.4.0-80.90-generic 5.4.124
Uname: Linux 5.4.0-80-generic x86_64
ApportVersion: 2.20.11-0ubuntu27.18
Architecture: amd64
CasperMD5CheckResult: skip
Date: Mon Aug 9 11:23:35 2021
ProcEnviron:
 TERM=xterm-256color
 PATH=(custom, no user)
 XDG_RUNTIME_DIR=<set>
 LANG=C.UTF-8
 SHELL=/bin/bash
SourcePackage: puredata
UpgradeStatus: No upgrade log present (probably fresh install)

Revision history for this message
IOhannes m zmoelnig (umlaeute) wrote :
Revision history for this message
IOhannes m zmoelnig (umlaeute) wrote :

here's a minimal debdiff to just trigger a rebuild.

tags: added: patch
description: updated
Revision history for this message
Ubuntu Foundations Team Bug Bot (crichton) wrote :

The attachment "debdiff" seems to be a debdiff. The ubuntu-sponsors team has been subscribed to the bug report so that they can review and hopefully sponsor the debdiff. If the attachment isn't a patch, please remove the "patch" flag from the attachment, remove the "patch" tag, and if you are member of the ~ubuntu-sponsors, unsubscribe the team.

[This is an automated message performed by a Launchpad user owned by ~brian-murray, for any issue please contact him.]

description: updated
Revision history for this message
IOhannes m zmoelnig (umlaeute) wrote :

sidenote: this bug seems to *only* affect `focal`.
Hirsute comes with Pd-0.51, which explicitely links against "-lm" (and has apparently been rebuild against newer glibc).

In any case when i run the test script from above on a fresh `Impish` installation, there are no more errors and everything looks good:

~~~sh
$ find /usr/lib/puredata/extra/*/ -name "*-help.pd" -exec pd -nrt -nogui -send "pd quit" {} ";"
bonk version 1.5
fiddle version 1.1 TEST4
sigmund~ version 0.07
pd~ version 0.54
pique 0.1 for PD version 23
sigmund~ version 0.07
pd~ version 0.54
$
~~~

Revision history for this message
Robie Basak (racb) wrote :

Sponsored. Thanks!

Now awaiting SRU review (from someone other than me).

Changed in puredata (Ubuntu):
status: New → Fix Released
Changed in puredata (Ubuntu Focal):
status: New → In Progress
Revision history for this message
Robie Basak (racb) wrote :

FTR, I modified the uploaded debdiff slightly as discussed on IRC.

Revision history for this message
Brian Murray (brian-murray) wrote : Please test proposed package

Hello IOhannes, or anyone else affected,

Accepted puredata into focal-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/puredata/0.50.2-3ubuntu0.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-focal to verification-done-focal. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-focal. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in puredata (Ubuntu Focal):
status: In Progress → Fix Committed
tags: added: verification-needed verification-needed-focal
Revision history for this message
IOhannes m zmoelnig (umlaeute) wrote :

thanks a lot.

on a fresh ubuntu VM (official vagrant image), installed `puredata-extra_0.50.2-3ubuntu0.1_amd64.deb` from focal-proposed and I can confirm that the bug is gone.

hooray.

Revision history for this message
José de Abreu (abreubacelar) wrote :

just tested it here, 0.50.2-3 shows the bug, and the focal proposed 0.50.2-3ubuntu0.1 works fine. And thanks Iohannes, i saw some new users with the problem, and to solve it we needed to teach people building puredata from source, which is easy, but for newcomers isn't as easy as just downloading the package! thank you!

Revision history for this message
Erich Eickmeyer (eeickmeyer) wrote :

IOhannes and José,

In the future, be sure to change the "verification-needed" and "verification-neeeded-{release}" tags as "verification-done" when you've confirmed the bug fix. Otherwise the system will not know to automatically migrate from updates-proposed to updates after the 7-day period.

tags: added: verification-done verification-done-focal
removed: verification-needed verification-needed-focal
Revision history for this message
Kaj Ailomaa (xeq) wrote :

I'd also like to confirm that the package in -proposed fixes the bug.

Creating for example a [bonk~] now works fine.

Revision history for this message
Antoine Rousseau (ant1r) wrote :

I confirm that installing puredata-extra from focal-proposed fixes the bug, i.e I can create a [fiddle~] normally, while this didn't work with preinstalled version.

thanks!

Revision history for this message
oliver stotz (oliverstotz) wrote :

I can also confirm that the bug is now fixed with -proposed

THANKS A BUNCH to everyone involved !

best

Oliver

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package puredata - 0.50.2-3ubuntu0.1

---------------
puredata (0.50.2-3ubuntu0.1) focal; urgency=medium

  * No-change rebuild for math symbols from glibc-2.31.
    (LP: #1939293)

 -- IOhannes m zmölnig (Debian/GNU) <email address hidden> Mon, 09 Aug 2021 11:58:58 +0000

Changed in puredata (Ubuntu Focal):
status: Fix Committed → Fix Released
Revision history for this message
Łukasz Zemczak (sil2100) wrote : Update Released

The verification of the Stable Release Update for puredata has completed successfully and the package is now being released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.