如何在macOS Catalina或Big Sur上的PHP 7.4上安装OCI8扩展?

时间:2020-11-02 06:49:01

标签: php oracle macos-catalina oci8

我已经通过Homebrew在Mac上安装了PHP 7.4.11和Apache 2.4.46。

然后安装了Oracle Instant Client和sqlplus(v19.3.0.0.0):

$ brew tap InstantClientTap/instantclient
$ brew install instantclient-basic
$ brew install instantclient-sqlplus

下一步是通过运行以下命令来安装OCI8扩展:

pecl install oci8

PECL提示了我

请提供ORACLE_HOME目录的路径。采用 'instantclient,/ path / to / instant / client / lib',如果您使用 Oracle Instant Client [自动检测]:

我不确定/path/to/instant/client/lib是什么,所以我运行了locate sqplus

/ usr / local / Cellar / instantclient-sqlplus / usr / local /地窖/instantclient-sqlplus/19.3.0.0.0dbru / usr / local /地窖/instantclient-sqlplus/19.3.0.0.0dbru/.brew / usr / local /地窖/instantclient-sqlplus/19.3.0.0.0dbru/.brew/instantclient-sqlplus.rb /usr/local/Cellar/instantclient-sqlplus/19.3.0.0.0dbru/INSTALL_RECEIPT.json / usr / local /地窖/instantclient-sqlplus/19.3.0.0.0dbru/bin / usr / local /地窖/instantclient-sqlplus/19.3.0.0.0dbru/bin/sqlplus / usr / local /地窖/instantclient-sqlplus/19.3.0.0.0dbru/lib /usr/local/Cellar/instantclient-sqlplus/19.3.0.0.0dbru/lib/libsqlplus.dylib /usr/local/Cellar/instantclient-sqlplus/19.3.0.0.0dbru/lib/libsqlplusic.dylib / usr / local /地窖/instantclient-sqlplus/19.3.0.0.0dbru/libexec / usr / local /地窖/instantclient-sqlplus/19.3.0.0.0dbru/libexec/sqlplus /usr/local/Homebrew/Library/Taps/instantclienttap/homebrew-instantclient/Formula/instantclient-sqlplus.rb / usr / local / bin / sqlplus /usr/local/lib/libsqlplus.dylib /usr/local/lib/libsqlplusic.dylib / usr / local / opt / instantclient-sqlplus / usr / local / var / homebrew / linked / instantclient-sqlplus

好的,让我们尝试以下两个目录:

/usr/local/Cellar/instantclient-sqlplus/19.3.0.0.0dbru/lib

正在检查Oracle ORACLE_HOME安装目录... /usr/local/Cellar/instantclient-sqlplus/19.3.0.0.0dbru/lib检查 ORACLE_HOME库有效性...配置:错误:Oracle库 找不到目录 /usr/local/Cellar/instantclient-sqlplus/19.3.0.0.0dbru/lib错误: `/ private / tmp / pear / temp / oci8 / configure --with-php-config = / usr / local / opt / php / bin / php-config --with-oci8 = / usr / local / Cellar / instantclient-sqlplus / 19.3.0.0.0dbru / lib'失败

/ usr / local / lib /

检查Oracle Instant Client目录... / usr / local / lib /检查 Oracle Instant Client SDK标头目录...配置:错误:Oracle 找不到Instant Client SDK头文件错误: `/ private / tmp / pear / temp / oci8 / configure --with-php-config = / usr / local / opt / php / bin / php-config --with-oci8 =即时客户端,/ usr / local / lib /'失败

/ path / to / instant / client / lib 产生了与前一个相同的错误。

那么正确的是什么?

1 个答案:

答案 0 :(得分:1)

我个人将安装新的Instant Client 19.8 DMGs from Oracle。下载页面和软件包中包含说明。另请参阅Notarized macOS Oracle Instant Client Packages Make Installation Easier上的步骤。安装基本和SDK软件包-如果需要,还可以安装SQL * Plus。在PECL提示符下输入的路径将是/ Users / yourname / Downloads / instanclient_19_8,但如果要将目录放置在其他位置,则可以将其移动。

可能是brew软件包将头文件放在OCI8安装脚本不知道的位置。通过使用DMG,可以找到标题。

相关问题