Trying to rebuild media-sound/pavucontrol or any other package that uses
dev-cpp/cairomm (like pulseeffects) will fail with:
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld:
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../lib64/libcairomm-1.0.so:
undefined reference to `cairo_script_create'
and a bunch of other "undefined reference" errors in libcairomm-1.0.so.
I don't know what broke cairomm. But I thought revdep-rebuild would
catch this. It doesn't.
Now this is a rebuild of pavucontrol, so if I run:
ldd -r /usr/bin/pavucontrol
I will get:
undefined symbol: cairo_script_create_for_stream
(/usr/lib64/libcairomm-1.0.so.1)
undefined symbol: cairo_script_set_mode (/usr/lib64/libcairomm-1.0.so.1)
undefined symbol: cairo_script_surface_create
(/usr/lib64/libcairomm-1.0.so.1)
undefined symbol: cairo_script_from_recording_surface
(/usr/lib64/libcairomm-1.0.so.1)
undefined symbol: cairo_script_create (/usr/lib64/libcairomm-1.0.so.1)
undefined symbol: cairo_script_surface_create_for_target
(/usr/lib64/libcairomm-1.0.so.1)
undefined symbol: cairo_script_get_mode (/usr/lib64/libcairomm-1.0.so.1)
undefined symbol: cairo_script_write_comment
(/usr/lib64/libcairomm-1.0.so.1)
If I rebuild dev-cpp/cairomm manually (emerge -1 dev-cpp/cairomm), the
error goes away, and the affected packages can now be emerged successfully.
Shouldn't revdep-rebuild catch this problem? Shouldn't it check
installed binaries for "undefined symbol" errors?