Michael wrote:
Did you try running revdep-rebuild with the --debug --verbose --pretend options to see if it reveals the specific library objects affected?
Good idea:
[...]
* Checking dynamic linking consistency
analyse(), Searching for 15578 libs, bins within 17138 libraries and links
LibCheck.__init__(), new searchlibs: ['32', '64']
LibCheck.search(), Checking for broken 32 bit libs
LibCheck.search(), Checking for broken 64 bit libs
LibCheck.search(); FOUND: 64bit, libfbclient.so.2, /usr/lib64/php8.2/apache2/libphp8.so
LibCheck.search(); FOUND: 64bit, libfbclient.so.2, /usr/lib64/php8.2/bin/php
LibCheck.search(); Total found: 1 libs, 2 files in 791 milliseconds
* Broken files that require: libfbclient.so.2 (64 bits)
* /usr/lib64/php8.2/apache2/libphp8.so
* /usr/lib64/php8.2/bin/php
LibCheck.process_results(); total filepaths found: 2 in 1 milliseconds
* Assign files to packages
* /usr/lib64/php8.2/apache2/libphp8.so -> dev-lang/php-8.2.24
* /usr/lib64/php8.2/bin/php -> dev-lang/php-8.2.24
assign_packages(); assigned 1 packages, 0 orphans in 6469 milliseconds
As I understand it, both "libphp8.so" and "php" itself need "libfbclient.so.2". But that does exist:
home01 /usr/lib64 # ls -l libfb*
lrwxrwxrwx 1 root root 32 Feb 9 11:11 libfbclient.so -> /opt/firebird/lib/libfbclient.so
lrwxrwxrwx 1 root root 34 Feb 9 11:11 libfbclient.so.2 -> /opt/firebird/lib/libfbclient.so.2
lrwxrwxrwx 1 root root 38 Feb 9 11:11 libfbclient.so.5.0.1 -> /opt/firebird/lib/libfbclient.so.5.0.1
home01 /usr/lib64 # ls -l /opt/firebird/lib
lrwxrwxrwx 1 root root 16 Aug 2 2024 libfbclient.so -> libfbclient.so.2 lrwxrwxrwx 1 root root 20 Aug 2 2024 libfbclient.so.2 -> libfbclient.so.5.0.1
-rwxr-xr-x 1 root root 2973336 Aug 2 2024 libfbclient.so.5.0.1
So, after re-emerging PHP, everything should be fine?!
home01 /usr/lib64/php8.2/apache2 # ldd libphp8.so | grep libfb
libfbclient.so.2 => /usr/lib64/libfbclient.so.2 (0x00007f434c0d3000)
home01 /usr/lib64/php8.2/bin # ldd php | grep libfb
libfbclient.so.2 => /usr/lib64/libfbclient.so.2 (0x00007fe65f5ac000)
and actually PHP *does* wotk with Firebird.
I guess revdep-rebuild thinks "no portage ebuild contains libfbclient.so.2 which is needed by PHP, so let's just re-install PHP and hope for the best". (Whereas the old "revdep-rebuild.sh" doesn't think so - strange, isn't it?)
I don't know portage (or revdep-rebuild) well enough to be able to say 'libfbclient.so.2 *is* available after all!'.
Either way, since you probably intend to continue using firebird I suggest you
consider if it is feasible to set up a local overlay to experiment with it. You could copy the ebuild for version 4.0 from the bgo-overlay, or the last firebird from portage attic and tweak it to make it compile and install on your system. https://gitweb.gentoo.org/repo/gentoo.git/log/?qt=grep&q=firebird
Hmmm... could be a solution indeed, but as long as it's just revdep-rebuild, the pain threshold for an overlay and tinkering with the ebuild has not yet been reached :-)
Firebird was dropped from portage recently due to a lack of maintainer. I appreciate it doesn't have the simplest of ebuilds, but if you become proficient in looking after your own ebuild, potentially with some advice from
Gentoo devs, you could contribute your work for Firebird to return back to portage.
Unfortunately, I haven't got any clue how to build ebuilds - I'm just writing application software. Regarding standard system software packages like Apache, PHP, Firebird and all that, I'm just a dumb user as everyone else. Sorry!
-Matt
--- SoupGate-Win32 v1.05
* Origin: fsxNet Usenet Gateway (21:1/5)