Skip to content

Apple Silicon Mac에서 빌드

Sejin Park edited this page Jan 17, 2023 · 3 revisions

Apple Silicon Mac에서 빌드

1. x86용 Homebrew 설치

# Install Homebrew at /usr/local (for Intel Rosetta 2)
$ arch -x86_64 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

2. zsh 설정

.zshrc에 아래 환경변수 추가

if [[ $(arch) == "arm64" ]]; then
  export PATH="/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/usr/local/sbin:$PATH"
else
  export PATH="/usr/local/bin:/usr/local/sbin:/opt/homebrew/bin:/opt/homebrew/sbin:$PATH"
fi

💡 x86 환경 <-> arm64 환경 전환

# arm64 -> x86
$ arch -arch x86_64 /bin/zsh
# x86 -> arm64
$ arch -arch arm64e /bin/zsh

3. x86 환경의 clang 설치

$ arch -arch x86_64 /bin/zsh
$ /usr/local/bin/brew install llvm

4. CMakeLists.txt 수정

CMakeLists.txt에 아래 설정 추가

SET(CMAKE_CXX_COMPILER /usr/local/Cellar/llvm/15.0.7/bin/clang++)

5. vcpkg 설치

프로젝트에 필요한 x86용 라이브러리 설치

./vcpkg install glm:x64-osx sdl2:x64-osx catch2:x64-osx spdlog:x64-osx

6. 기존과 같이 빌드 수행

$ cmake -B out -S . -DCMAKE_TOOLCHAIN_FILE=../vcpkg/scripts/buildsystems/vcpkg.cmake
$ cmake --build out

추가내용

3번의 x86용 clang 설치 과정과 4번의 CMakeLists.txt 설정 추가 과정 없이 arch -arch x86_64 /bin/zsh 로 x86 환경으로 변경 후 바로 빌드해도 빌드가 되는 것 확인.

그렇지만 일단 위의 방법을 권장.

참고