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

Reply via email to