MajQel
MajQel

Reputation: 155

php7.2 and oci8 conflict

After migrating server to php7.2 from php5.4 oci8 is not working. Upgrade procedure: 1. remove php packages 2. Install php72u-common + some extras.

result:

PHP Warning:  PHP Startup: Unable to load dynamic library 'oci8.so' (tried: /usr/lib64/php/modules/oci8.so (/usr/lib64/php/modules/oci8.so: undefined symbol: _zend_list_delete), /usr/lib64/php/modules/oci8.so.so (/usr/lib64/php/modules/oci8.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
PHP 7.2.10 (cli) (built: Sep 13 2018 16:53:29) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.2.10, Copyright (c) 1999-2018, by Zend Technologies

I couldn't find any useful info in google. Please help (this is production server)

EDIT: It's for sure not about wrong php.ini extension=oci8.so output:

PHP Warning:  PHP Startup: Unable to load dynamic library 'oci8.so' (tried: /usr/lib64/php/modules/oci8.so (/usr/lib64/php/modules/oci8.so: undefined symbol: _zend_list_delete), /usr/lib64/php/modules/oci8.so.so (/usr/lib64/php/modules/oci8.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0

extension=oci8 output:

PHP Warning:  PHP Startup: Unable to load dynamic library 'oci8' (tried: /usr/lib64/php/modules/oci8 (/usr/lib64/php/modules/oci8: cannot open shared object file: No such file or directory), /usr/lib64/php/modules/oci8.so (/usr/lib64/php/modules/oci8.so: undefined symbol: _zend_list_delete)) in Unknown on line 0

/usr/lib64/php/modules/oci8.so exsists.

Upvotes: 0

Views: 4827

Answers (1)

Alex Howansky
Alex Howansky

Reputation: 53533

/usr/lib64/php/modules/oci8.so.so: cannot open shared object file

You've got an extra .so at the end of your string there. You've probably got this in your php.ini:

extension = oci8.so

Change it to:

extension = oci8

Upvotes: 1

Related Questions