PHP7.0 - unable to load dynamic library oci8.so (U

2019-03-06 15:16发布

After following the install instructions for oracle instant client, php is not able to load the oci8 extension.
http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html#ic_x64_inst

I am getting an error.
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/oci8.so' - libmql1.so: cannot open shared object file: No such file or directory in Unknown on line 0

I have verified both oci8.so and libmql1.so locations.

Am I missing something?

标签: php ubuntu oci
3条回答
兄弟一词,经得起流年.
2楼-- · 2019-03-06 15:49

I solved adding the following to /etc/environment:

LD_LIBRARY_PATH=/opt/oracle/instantclient_12_2:$LD_LIBRARY_PATH

I followed this tutorial: https://gist.github.com/hewerthomn/81eea2935051eb2500941a9309bca703

查看更多
\"骚年 ilove
3楼-- · 2019-03-06 16:02

What I did was completely remove any installations of PHP and reinstall the version that I need.

sudo apt-get purge 'php*'

Source: https://askubuntu.com/a/59889/226518

查看更多
我命由我不由天
4楼-- · 2019-03-06 16:07

I'm using Ubuntu 16.04 and php version 7.1

There are few directories in /usr/lib/php/ for example

20131226 for php5.6

20160303 for php7.1

so problem with me that, the oci8 extension got installed on the wrong ( a user lib folder for php7.2) so I had to remove the php 7.2 completly

sudo apt-get purge php7.2-common

then I had uninstall the oci8 by running following command

sudo pecl uninstall oci8

and install again by running the following command

sudo pecl install oci8

To check the configuration loaded you do

php-config --extension-dir

And make sure that all extension are installed in the correct extension directory.

Make changes in the /etc/php/7.1/apache2/php.ini and /etc/php/7.1/cli/php.ini

Check by running phpinfo(); You must see this, ignore the cli if that stills gives you same error as your web shows the extension is getting loaded.

enter image description here

查看更多
登录 后发表回答