Skip to content

Instantly share code, notes, and snippets.

What would you like to do?
How to install OCI8 on macOS 10.15 (Catalina) with PHP 7.3 or 7.4 (Homebrew)

How to install OCI8 on macOS 10.15 (Catalina) with PHP 7.3 or 7.4


  • Homebrew
  • Command Line Tools for Xcode
  • PHP 7.3 or 7.4 via Homebrew


Create a folder to store Oracle Instant Client files.

sudo mkdir /opt/oracle

Download Oracle Instant Client

Download the following files from Oracle website

Unzip all theses files into a the directory /opt/oracle/instantclient_19_8.

Create symlinks

ln -s /opt/oracle/instantclient_19_8/sdk/include/*.h /usr/local/include/
ln -s /opt/oracle/instantclient_19_8/*.dylib /usr/local/lib/
ln -s /opt/oracle/instantclient_19_8/*.dylib.19.1 /usr/local/lib/
ln -s /usr/local/lib/libclntsh.dylib.19.1 /usr/local/lib/libclntsh.dylib

Install extension with PECL

pecl install oci8

If the script prompt you to provide the path to ORACLE_HOME directory, respond with:



If you ever got error command not found: pecl, make sure PHP bin folder is included in your environment path.

Test it out

Create a file containing the following codes.

if (function_exists('oci_connect')) {
    echo 'OCI8 is working!';
else {
    echo 'Whoopss...not working!';

Restart your HTTP Server and test.


Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.