Just for the record:
I tried to do this today (I have a couple servers doing that for 7 years already):
Server A: httpd with php with interbase extension (AARCH64)
Sever B: Firebird 4 (X86)
Nodejs (node-firebird, latest version) connected correctly from Server A to Server B ONLY AFTER IBExpert was used to CONFIRM user SYSDBA and password through User Manager. GSEC should have been able to do this, but it failed.
Server A: interbase and pdo_firebird were NEVER recognized as libraries when starting Apache2:
These were the errores logged:
[Fri Nov 05 19:10:25.844361 2021] [mpm_prefork:notice] [pid 61463] AH00171: Graceful restart requested, doing restart
PHP Warning: PHP Startup: Unable to load dynamic library 'pdo_firebird' (tried: /usr/lib/php/20200930/pdo_firebird (/usr/lib/php/20200930/pdo_firebird: cannot open shared object file: No such file or directory), /usr/lib/php/20200930/pdo_firebird.so (/usr/lib/php/20200930/pdo_firebird.so: undefined symbol: php_pdo_unregister_driver)) in Unknown on line 0
But locate finds them:
# locate pdo_firebird.so
/usr/lib/php/20200930/pdo_firebird.so
# locate interbase
/usr/share/php8.0-interbase
/usr/share/php8.1-interbase
/usr/share/bug/php8.0-interbase
/usr/share/bug/php8.1-interbase
/usr/share/bug/php8.0-interbase/control
/usr/share/bug/php8.0-interbase/script
/usr/share/bug/php8.1-interbase/control
/usr/share/bug/php8.1-interbase/script
/usr/share/doc/php8.0-interbase
/usr/share/doc/php8.1-interbase
/usr/share/lintian/overrides/php8.0-interbase
/usr/share/lintian/overrides/php8.1-interbase
/usr/share/php8.0-interbase/interbase
/usr/share/php8.0-interbase/interbase/pdo_firebird.ini
/usr/share/php8.1-interbase/interbase
/usr/share/php8.1-interbase/interbase/pdo_firebird.ini
/var/lib/dpkg/info/php8.0-interbase.list
/var/lib/dpkg/info/php8.0-interbase.md5sums
/var/lib/dpkg/info/php8.0-interbase.postinst
/var/lib/dpkg/info/php8.0-interbase.postrm
/var/lib/dpkg/info/php8.0-interbase.preinst
/var/lib/dpkg/info/php8.0-interbase.prerm
/var/lib/dpkg/info/php8.0-interbase.triggers
/var/lib/dpkg/info/php8.1-interbase.list
/var/lib/dpkg/info/php8.1-interbase.md5sums
/var/lib/dpkg/info/php8.1-interbase.postinst
/var/lib/dpkg/info/php8.1-interbase.postrm
/var/lib/dpkg/info/php8.1-interbase.preinst
/var/lib/dpkg/info/php8.1-interbase.prerm
/var/lib/dpkg/info/php8.1-interbase.triggers
That is the AArch64 Linux machine. (AWS t4g.small). Unusable as PHP Client of a Firebird 4.0 server.
It is is usable as client of node-firebird from the AARCH64 machine to the X86 machine exclusively for Firebird 4.0
The ONLY universal client will be node-firebird, since it doesn't require binary extensions.
Is this what would have been expected?