Failed to determine realpath of '/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk' (errno=No such file or directory)
, xcodebuild: error: SDK ... cannot be located.
에러 발생export SDKROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk
내 아이폰 13에서 사용할 플러터 앱을 개발하고 있었다. 드디어 구현과 테스트를 마친 후 휴대폰에 설치하려는데 이상하게 인식이 안 된다. 찾아보니 xcode를 업데이트해야 하고, xcode를 업데이트하려면 mac OS를 업데이트해야 한다고 한다. 그렇게 업데이트 지옥을 맛보게 되는데...
flutter doctor
를 한번 해준다.??? 처음 보는 에러가 난다. 그것도 꽤 길게.
flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.3.10, on macOS 13.1 22C65 darwin-arm, locale en-US)
[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
Error executing simctl: 72
2023-01-15 19:18:43.989 xcodebuild[33641:5430470] Writing error result bundle to
/var/folders/dl/z9g4xprd5m73g8s9y0rpv5880000gn/T/ResultBundle_2023-15-01_19-18-0043.xcresult
xcodebuild: error: SDK "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk"
cannot be located.
xcrun: error: Failed to determine realpath of
'/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk' (errno=No such file or
directory)
xcrun: error: sh -c '/Applications/Xcode.app/Contents/Developer/usr/bin/xcodebuild -sdk
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -find simctl 2>
/dev/null' failed with exit code 16384: (null) (errno=No such file or directory)
xcrun: error: unable to find utility "simctl", not a developer tool or in PATH
[!] Xcode - develop for iOS and macOS (Xcode 14.2)
✗ Xcode requires additional components to be installed in order to run.
Launch Xcode and install additional required components when prompted or run:
sudo xcodebuild -runFirstLaunch
[✓] Chrome - develop for the web
[✓] Android Studio (version 2021.3)
[✓] IntelliJ IDEA Ultimate Edition (version 2022.3)
[✓] VS Code (version 1.74.3)
[✓] Connected device (3 available)
[✓] HTTP Host Availability
! Doctor found issues in 1 category.
본업이 모바일 개발이 아니다보니 iOS 관련 에러가 나면 일단 겁부터 먹고 보는 편인데, 하필 xcode 관련 오류가 났다. (얼핏 보기에는 \n
때문에 마치 Android toolchain 에러인 것처럼 보이지만 그렇지 않다. 😇)
플러터 개발하다가 ios 에러를 만나면 일단 /ios
폴더에 들어가서 pod install
을 후다닥 쳐주면 대부분 해결된다는 팁을 들은 적 있어서 그렇게 했다. 안 먹힌다. flutter clean
도 몇번이고 해봤다. 통하지 않는다.
다시 에러 메세지로 돌아가보자.
자세히 보면 xcodebuild: error: SDK "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk" cannot be located.
, Failed to determine realpath of '/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk' (errno=No such file or directory)
이렇게 일단 xcode
와 path에 관련된 오류라는걸 알 수 있다.
없는게 없는 stackOverflow에 역시 나와 똑같은 질문을 남긴 사람이 있었다. 원인은 정말 단순했다. xcode SDK 경로를 찾지 못한다는 것이다.(...) 이 부분에 명확히 나와있었다.
Failed to determine realpath of '/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk' (errno=No such file or directory)
그래서 해결책은 그냥 쉘에게 올바른 경로를 알려주는 것이다.
xcrun -sdk macosx --show-sdk-path
내 컴퓨터는 이렇게 나왔다.
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk
sudo vi ~/.zshrc
로 열 수 있다.export SDKROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk
source ~/.zshrc
)하거나, 쉘을 종료하고 재시작한다.flutter doctor
하면 말끔히 해결 ^-^flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.3.10, on macOS 13.1 22C65 darwin-arm, locale en-US)
[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
[✓] Xcode - develop for iOS and macOS (Xcode 14.2)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2021.3)
[✓] VS Code (version 1.74.3)
[✓] Connected device (4 available)
[✓] HTTP Host Availability
• No issues found!
처음 보는 에러가 나도 침착하게 읽어봐야겠다. (라고 늘 다짐하지만 항상 당황하게 되는걸 보면 아직 갈 길이 먼 것 같다.😇) 이전에 쓰던 xcode 버전이 12.3 이었는데 에러 메세지에 그대로 나와있다. "너 왜 12.3 버전 SDK 경로를 알려주니? 나는 그거 안 쓸건데." 라고.,,.
저는 이상하게 오류나면 한번에 와다다다다ㅏ 나더라구요 그러면 맥북 던지고 싶어요 ㅎㅎ