When built with USE=imlib, libcaca provides /usr/bin/cacaview and /usr/bin/img2txt that link against /usr/lib/libImlib2.so.1 which is provided by media-libs/imlib2: # ldd /usr/bin/cacaview | grep libImlib2 libImlib2.so.1 => /usr/lib/libImlib2.so.1 (0x7f0350f6e000) # ldd /usr/bin/img2txt | grep libImlib2 libImlib2.so.1 => /usr/lib/libImlib2.so.1 (0x7fbd01744000) But libcaca-0.99_beta19-r8.ebuild does not RDEPEND on media-libs/imlib2. As a result, `emerge --depclean --with-bdeps=n` removes media-libs/imlib2, leaving /usr/lib/libImlib2.so.1 orphaned. Rather than RDEPEND-ing on media-libs/imlib2, the ebuild merely DEPEND-s on it. The fix is easy, just move the following line imlib? ( >=media-libs/imlib2-1.4.6-r2[${MULTILIB_USEDEP}] ) from the DEPEND list to the RDEPEND list. Reproducible: Always
For completeness, this is the error message from `emerge --depclean --with-bdeps=n` !!! existing preserved libs: >>> package: media-libs/imlib2-1.7.1-r2 * - /usr/lib/libImlib2.so.1 * - /usr/lib/libImlib2.so.1.7.1 * used by /usr/bin/cacaview (media-libs/libcaca-0.99_beta19-r8) * used by /usr/bin/img2txt (media-libs/libcaca-0.99_beta19-r8)
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ffce9b894fca9840e433b255e63fc2ad6a8203b6 commit ffce9b894fca9840e433b255e63fc2ad6a8203b6 Author: Sam James <sam@gentoo.org> AuthorDate: 2022-10-10 21:59:48 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2022-10-10 22:06:06 +0000 media-libs/libcaca: fix RDEPEND Closes: https://bugs.gentoo.org/868285 Signed-off-by: Sam James <sam@gentoo.org> .../{libcaca-0.99_beta19-r9.ebuild => libcaca-0.99_beta19-r10.ebuild} | 1 + 1 file changed, 1 insertion(+)