remicollet / remirepo

Issue tracker for
https://rpms.remirepo.net/
277 stars 53 forks source link

php-oci8 fails to install with oracle-database-free-23c-1.0-1.x86_64 #269

Closed jbweb closed 5 days ago

jbweb commented 1 week ago

Hi

I'm trying to install php-oci8 in combination with the oracle-database-free-23c-1.0-1.x86_64 package from Oracle.

# dnf install php-oci8
Last metadata expiration check: 0:21:31 ago on 2024-09-07T09:58:53 CEST.
Error: 
 Problem: cannot install the best candidate for the job
  - nothing provides libclntsh.so.23.1()(64bit) needed by php-oci8-8.2.23-1.el9.remi.x86_64 from remi-modular

oracle-database-free-23c-1.0-1.x86_64 should provide this:

# dnf provides libclntsh.so
Last metadata expiration check: 0:10:30 ago on 2024-09-07T09:58:53 CEST.
oracle-database-free-23c-1.0-1.x86_64 : Oracle 23c Free Database
Repo        : @System
Matched from:
Provide    : libclntsh.so = 23.1

oracle-database-free-23c-1.0-1.x86_64 is install from a RPM with dnf

# dnf localinstall -y oracle-database-free-23c-1.0–1.el8.x86_64.rpm

Trying to install oracle-instantclient-basic (which I would normally do on a non-Oracle-database server), results in conflicts, which is to expected.

# dnf localinstall oracle-instantclient-basic-23.5.0.24.07-1.el9.x86_64.rpm
Last metadata expiration check: 0:18:15 ago on 2024-09-07T09:58:53 CEST.
Error: 
 Problem: package oracle-instantclient-basic-23.5.0.24.07-1.el9.x86_64 from @commandline conflicts with genezi <= 23.5 provided by oracle-database-free-23c-1.0-1.x86_64 from @System
  - package oracle-instantclient-basic-23.5.0.24.07-1.el9.x86_64 from @commandline conflicts with libclntsh.so <= 23.5
[...]

Is there anyway it could be possible to make php-oci8 compatible with oracle-database-free-23c-1.0-1.x86_64? Or I'm going about this the wrong way?

remicollet commented 1 week ago

This means oracle-database-free-23c is badly packaged by Oracle and doesn't provide what it should.

Try to report this issue to Oracle ;)

Sorry, but I don't see a proper solution to this

Older way (no requires of libclntsh.so.23.1()(64bit)) raise issue allowing non working installation, and breaking installation on update, see #176 and other closed issues

@cjbj any idea how to report this ?

remicollet commented 1 week ago

For now it seems better to not install PHP on the same server than Oracle Database

If you really need it, run php-fpm in a container.

cjbj commented 1 week ago

DB and Instant Client rpms cannot be installed concurrently. This is by design.

— Reply to this email directly, view it on GitHubhttps://urldefense.com/v3/__https://github.com/remicollet/remirepo/issues/269*issuecomment-2336575215__;Iw!!ACWV5N9M2RV99hQ!I60Q5kUima3Eha2RnvJe3v8cLuyheFeDEN_AhkDeeuRFahaD-7MFt4AlZBs5_QIGbsh9KbEix1Oo-Pzhi9mOgyxcHPegWUE$, or unsubscribehttps://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AABRASQ5POD5IG6TNATDCW3ZVPZ3LAVCNFSM6AAAAABNZ2JAMKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGMZWGU3TKMRRGU__;!!ACWV5N9M2RV99hQ!I60Q5kUima3Eha2RnvJe3v8cLuyheFeDEN_AhkDeeuRFahaD-7MFt4AlZBs5_QIGbsh9KbEix1Oo-Pzhi9mOgyxcKHC5Hxk$. You are receiving this because you were mentioned.Message ID: @.***>

remicollet commented 1 week ago

DB and Instant Client rpms cannot be installed concurrently. This is by design.

Yes, this makes sense.

But if the database provides the client library, the RPM should provides it (libclntsh.so.23.1()(64bit)), like the RPM of the client does. The RPM of the client library was fixed a few time ago, the RPM of the database was not.

remicollet commented 5 days ago

Closing as nothing I can fixed on my side. Sorry.