Gentoo Archives: gentoo-user

From: Nikos Chantziaras <realnc@×××××.com>
To: gentoo-user@l.g.o
Subject: [gentoo-user] Why doesn't revdep-rebuild catch undefined symbol errors?
Date: Thu, 25 Oct 2018 06:30:14
Message-Id: pqrnp0$esm$1@blaine.gmane.org
1 Trying to rebuild media-sound/pavucontrol or any other package that uses
2 dev-cpp/cairomm (like pulseeffects) will fail with:
3
4 /usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld:
5 /usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../lib64/libcairomm-1.0.so:
6 undefined reference to `cairo_script_create'
7
8 and a bunch of other "undefined reference" errors in libcairomm-1.0.so.
9 I don't know what broke cairomm. But I thought revdep-rebuild would
10 catch this. It doesn't.
11
12 Now this is a rebuild of pavucontrol, so if I run:
13
14 ldd -r /usr/bin/pavucontrol
15
16 I will get:
17
18 undefined symbol: cairo_script_create_for_stream
19 (/usr/lib64/libcairomm-1.0.so.1)
20 undefined symbol: cairo_script_set_mode (/usr/lib64/libcairomm-1.0.so.1)
21 undefined symbol: cairo_script_surface_create
22 (/usr/lib64/libcairomm-1.0.so.1)
23 undefined symbol: cairo_script_from_recording_surface
24 (/usr/lib64/libcairomm-1.0.so.1)
25 undefined symbol: cairo_script_create (/usr/lib64/libcairomm-1.0.so.1)
26 undefined symbol: cairo_script_surface_create_for_target
27 (/usr/lib64/libcairomm-1.0.so.1)
28 undefined symbol: cairo_script_get_mode (/usr/lib64/libcairomm-1.0.so.1)
29 undefined symbol: cairo_script_write_comment
30 (/usr/lib64/libcairomm-1.0.so.1)
31
32 If I rebuild dev-cpp/cairomm manually (emerge -1 dev-cpp/cairomm), the
33 error goes away, and the affected packages can now be emerged successfully.
34
35 Shouldn't revdep-rebuild catch this problem? Shouldn't it check
36 installed binaries for "undefined symbol" errors?

Replies