ZShell, Rosetta 가 이미 설치되어 있는 환경이라고 가정한다.

Homebrew (x86 환경) 설치

$ arch -x86_64 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

아키텍처에 따라 Homebrew 의 설치되는 경로가 다르다.

  • 애플 실리콘 - /opt/homebrew
  • 인텔 - /usr/local/opt

따라서 기존 Homebrew 와의 경로가 서로 겹칠 일이 없으니 신경쓰지 않아도 된다.

 

나중에 아키텍처 바꿔서 Homebrew 실행해야 할 때 편하게 실행할 수 있도록 ibrew 라는 이름으로 별칭을 정해주자.

먼저 아래처럼 .zshrc 를 연 다음

$ vi .zshrc

alias 를 추가해준다.

alias ibrew='arch -x86_64 /usr/local/bin/brew'

그 후 변경사항을 반영해준다.

$ source .zshrc

 

여기서부터 아래에 설명할 내용들은 무조건 x86 환경으로 진행해서 설치해야 한다. 그 후 나중에 PHP 실행은 굳이 x86 환경으로 진입하지 않아도 된다. 설치만 x86 환경으로 진행해야 한다.

 

PHP 설치

위에서 ibrew 로 별칭을 정했기 때문에 아래에서는 이를 이용해 실행하여 진행하는 방식으로 되어 있지만 arch -x86_64 /bin/zsh 로 명령어 실행해서 진행해도 된다.

 

현재 글 쓰는 시점으로 PHP 8버전이 주요 버전이므로 7 이하 버전은 homebrew 에서 검색이 되지 않는다. 이를 지원하기 위해 이전 버전이 검색되도록 추가해야 한다.

아래처럼 명렁어를 입력해서 이전 버전들이 검색되도록 추가해준다.

# 검색에서 검색되도록 추가해준다.
$ ibrew tap shivammathur/php

# 확인
$ ibrew search php@7

 

여기에서는 PHP 7 버전을 설치해서 진행할 것이므로 PHP 7 버전을 검색해서 설치를 진행해주자.

# PHP 7.1 경우 (php.ini 는 /usr/local/etc/php/7.1/ 에 설치된다)
$ ibrew install shivammathur/php/php@7.1
$ echo 'export PATH="/usr/local/opt/php@7.1/bin:$PATH"' >> ~/.zshrc
$ echo 'export PATH="/usr/local/opt/php@7.1/sbin:$PATH"' >> ~/.zshrc
 
# PHP 7.2 경우 (php.ini 는 /usr/local/etc/php/7.2/ 에 설치된다)
$ ibrew install shivammathur/php/php@7.2
$ echo 'export PATH="/usr/local/opt/php@7.2/bin:$PATH"' >> ~/.zshrc
$ echo 'export PATH="/usr/local/opt/php@7.2/sbin:$PATH"' >> ~/.zshrc

 

만약 여러 개의 PHP 버전을 이용해야 할 것이라면 .zshrc 파일을 열고, 원하는 PHP 버전의 export 명령어만 실행되도록 나머지는 주석처리 해준다.

 

Composer 설치

현재의 Composer 2버전은 PHP 7.2 버전 이상이어야 이용할 수 있다. 현재 사용하고 있는 프로젝트에 따라서 1버전을 이용해야 할 수 있는데 여기에서는 1버전을 이용하는 방법만 다룬다.

$ curl -O "https://getcomposer.org/download/1.10.26/composer.phar"
$ chmod a+x composer.phar
$ sudo mv composer.phar /usr/local/bin/composer1
 
# 그 후 이용할 때는 아래처럼 사용하자
$ composer1 req ...

 

packagist 에서 Composer 1 버전은 2025년 8월 1일부터 패키지 액세스가 종료될 예정이므로 가능하면 사용하지 말자. 굳이 사용하고자 한다면, Composer 2.2.x 버전으로 이용하자(그 이상의 버전은 PHP 7.2 버전 이상이어야 한다).

 

사내 SSL 암복호화 때문에 Composer Repository 접근이 안된다면 아래처럼 SSL을 해제하고 다시 시도해보자

$ composer config --global disable-tls true
$ composer config --global secure-http false

 

OCI8 설치

Oracle Instant Client 다운로드

OCI8 설치하기 이전에 먼저 Oracle Instant Client 가 필요하다.

http://www.oracle.com/technetwork/topics/intel-macsoft-096467.html

 

Instant Client for macOS (Intel x86)

Instant Client Installation for macOS (Intel x86) Installing Instant Client 19.16 on macOS Instant Client 19.16 supports macOS High Sierra, Mojave, Catalina, Big Sur and Monterey. In Finder, double click on all desired Instant Client .dmg packages to mount

www.oracle.com

위 링크에 들어가서 아래 세 가지(basic, sqlplus, sdk) 첨부파일을 받고 압축을 푼다. (다운로드 시 오라클 계정이 필요하다)

아래에 명시된 버전은 12.2.0.1.0 이지만 최신 버전이어도 상관없다.

  • instantclient-basic-macos.x64-12.2.0.1.0-2.zip
  • instantclient-sqlplus-macos.x64-12.2.0.1.0-2.zip
  • instantclient-sdk-macos.x64-12.2.0.1.0-2.zip

압축을 풀 때 모두 동일한 폴더에 위치하도록 한다.

그리고 해당 폴더는 /Users/사용자이름/.instantclient/12_2 이런식으로 이동해놓는다.

 

OCI8 설치

다음으로 pecl 명령어를 이용해서 OCI8 를 설치할 것인데 여기서 중요한 점은 PHP 버전에 따라 지원하는 OCI8 버전이 다르므로 이를 신경써서 진행해야 한다(어차피 지원하는 버전이 서로 다르면 컴파일 오류가 나면서 진행이 되지 않는다).

# PHP 7.1 기준
$ cd /usr/local/opt/php@7.1/bin
$ ./pecl install oci8-2.1.8
 
# PHP 7.4 기준
$ ./pecl install oci8-2.2.0

도중에 ORACLE_HOME 에 대한 instantclient 경로를 묻는 것이 나오는데 아래와 같이 앞에는 instantclient, 를 적고 바로 뒤에는 이전에 위에서 이동해놨던 경로를 적는다.

instantclient,/Users/사용자이름/.instantclient/12_2

 

그러면 설치가 진행되는데 이 과정에서 Mac 의 개인정보 보호 및 보안 관련해서 라이브러리들을 막 차단시킨다. 시스템 설정 > 개인정보 보호 및 보안으로 가서 반복하며 하나씩 허용을 해주자.

 

설치가 끝나면 아래처럼 명령어를 실행해서 oci8.so 파일 이용이 추가되었는지 확인하자

$ cd /usr/local/etc/php/7.1/
$ vi php.ini
extension="oci8.so"
[PHP]
 
;;;;;;;;;;;;;;;;;;;

 

XDebug 설치

이것도 PHP 버전에 따라서 설치해야 하는 버전이 다르다.

https://xdebug.org/docs/compat

 

Xdebug: Documentation » Supported Versions and Compatibility

Supported Versions and Compatibility This page lists which versions of Xdebug are still supported, and with which versions of PHP they can be used. PHP Version Support # This table lists which version of Xdebug is still supported, and which ones to use for

xdebug.org

위 링크에 들어가면 PHP 버전에 따라 호환되는 버전이 명시되어 있다. 버전을 확인했으면 아래처럼 설치를 진행해주자. 아래는 PHP 7.4 버전을 이용하고 있어서 PHP 7.4 버전에 맞는 xdebug 3.1.6 버전으로 진행한 것이다.

$ cd /usr/local/Cellar/php@7.4/7.4.33_6/bin
$ ./pecl install xdebug-3.1.6