6

根据这个(从 PECL 安装 OCI8,自动化),我所要做的就是输入pecl oci8 install.

但这只会让我反复出现以下错误。

No releases available for package pecl.php.net/oci8.

另一个网站建议我试试pear install pecl/oci8。发生同样的错误。

我该怎么做才能解决这个问题?

4

1 回答 1

4

我在 Ubuntu LTS 14.04 上有同样的错误:

~$ sudo pecl install oci8
No releases available for package "pecl.php.net/oci8"
install failed

最后的原因是代理问题:我的电脑坐在公司代理服务器之后。运行以下命令添加代理

~$ sudo pear config-set http_proxy http://proxy.mycompany.com:8080/
config-set succeeded

然后再次运行命令,它的工作原理如下

~$ sudo pecl install oci8
downloading oci8-2.0.8.tgz ...
Starting to download oci8-2.0.8.tgz (190,854 bytes)
....done: 190,854 bytes
11 source files, building
running: phpize
Configuring for:
PHP Api Version:         20121113
Zend Module Api No:      20121212
Zend Extension Api No:   220121212

在这里,我们输入 Oracle Instant 客户端文件夹,如下所示:

Please provide the path to the ORACLE_HOME directory. Use 'instantclient,/path/to/instant/client/lib' if you're compiling with Oracle Instant Client [autodetect] : instantclient,/opt/oracle/instantclient_12_1

然后命令行继续输出:

building in /tmp/pear/temp/pear-build-rootJafknN/oci8-2.0.8
running: /tmp/pear/temp/oci8/configure --with-oci8=instantclient,/opt/oracle/instantclient_12_1
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
...
...
Build process completed successfully
Installing '/usr/lib/php5/20121212/oci8.so'
install ok: channel://pecl.php.net/oci8-2.0.8
configuration option "php_ini" is not set to php.ini location
You should add "extension=oci8.so" to php.ini

祝你好运。

于 2015-10-21T18:11:47.897 回答