[Debian-med-packaging] Bug#1001305: orthanc ftbfs with glibc 2.34
Steve Langasek
steve.langasek at canonical.com
Wed Dec 8 03:05:05 GMT 2021
Package: orthanc
Version: 1.9.7+dfsg-3
Severity: important
Tags: patch
User: ubuntu-devel at lists.ubuntu.com
Usertags: origin-ubuntu jammy ubuntu-patch
Dear maintainers,
In Ubuntu, we have upgraded to glibc 2.34 which results in orthanc failing
to build from source, because it includes a test that tries to dlopen()
libdl.so and in glibc 2.34 libdl.so no longer exists, its functionality
having been rolled into libc6. To fix this test, orthanc will need to
dlopen some other library.
Attached is a patch which switches the test to dlopen libmemusage.so
instead, which is also provided by libc6-dev so should always be available.
Please consider applying this patch or a similar one in Debian.
This is obviously not critical in Debian yet, since experimental still only
has glibc 2.33.
Cheers,
--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer https://www.debian.org/
slangasek at ubuntu.com vorlon at debian.org
-------------- next part --------------
diff -Nru orthanc-1.9.7+dfsg/debian/patches/glibc-2.34.patch orthanc-1.9.7+dfsg/debian/patches/glibc-2.34.patch
--- orthanc-1.9.7+dfsg/debian/patches/glibc-2.34.patch 1969-12-31 16:00:00.000000000 -0800
+++ orthanc-1.9.7+dfsg/debian/patches/glibc-2.34.patch 2021-12-07 18:52:24.000000000 -0800
@@ -0,0 +1,26 @@
+Description: fix compatibility with glibc 2.34
+ In glibc 2.34, libdl.so no longer exists because the shared library has been
+ rolled into libc.so. This causes the dlopen tests to fail. Use
+ libmemusage.so instead, which is also provided by libc6-dev.
+Author: Steve Langasek <steve.langasek at ubuntu.com>
+Last-Update: 2021-12-07
+Forwarded: no
+
+Index: orthanc-1.9.7+dfsg/OrthancServer/UnitTestsSources/PluginsTests.cpp
+===================================================================
+--- orthanc-1.9.7+dfsg.orig/OrthancServer/UnitTestsSources/PluginsTests.cpp
++++ orthanc-1.9.7+dfsg/OrthancServer/UnitTestsSources/PluginsTests.cpp
+@@ -86,10 +86,10 @@
+ //ASSERT_TRUE(l.HasFunction("_init"));
+
+ #elif defined(__linux__) || defined(__FreeBSD_kernel__)
+- SharedLibrary l("libdl.so");
++ SharedLibrary l("libmemusage.so");
+ ASSERT_THROW(l.GetFunction("world"), OrthancException);
+- ASSERT_TRUE(l.GetFunction("dlopen") != NULL);
+- ASSERT_TRUE(l.HasFunction("dlclose"));
++ ASSERT_TRUE(l.GetFunction("munmap") != NULL);
++ ASSERT_TRUE(l.HasFunction("free"));
+ ASSERT_FALSE(l.HasFunction("world"));
+
+ #elif defined(__FreeBSD__) || defined(__OpenBSD__)
diff -Nru orthanc-1.9.7+dfsg/debian/patches/series orthanc-1.9.7+dfsg/debian/patches/series
--- orthanc-1.9.7+dfsg/debian/patches/series 2021-11-22 06:22:14.000000000 -0800
+++ orthanc-1.9.7+dfsg/debian/patches/series 2021-12-07 18:50:42.000000000 -0800
@@ -1 +1,2 @@
donotforcec++11.patch
+glibc-2.34.patch
More information about the Debian-med-packaging
mailing list