ios 14대응하기 위해, 맥 os를 카탈리나로 업그레이드하고, xcode12로 업데이트 했더니,
역시나 애플.. 빌드 실패가 떴다. 에러메시지를 보니 아래와 같다.
ld: in {...}/proj.ios_mac/sdkbox.framework/sdkbox(IAPTrackingIOS.o),
building for iOS Simulator, but linking in object file built for iOS,
file '{...}/proj.ios_mac/sdkbox.framework/sdkbox' for architecture arm64
딱 보아하니 arm64로 빌드가 뭔가 문제가 있어보였다. 일단 구글링 해 보니,
xcode12에 [Build Settings]->[Excluded Architectures]에 arm64를 추가해보라는게 대부분이었다.
xcode12가되면서 Excluded Architectures라는 녀석이 생겼는데, 시뮬레이터는 arm64가 아니니, 저렇게 하라는 거 같다. 실제로 대부분 답변들이 저걸로 해결 됐다고 하는데, 나는 또 다른 문제에 부딪히게 됐다.
이번엔 생성된 app파일의 권한이 없다고 나왔다. 그래서 카탈리나 os에 새롭게 생긴 접근 권한이 문제인가 해서, 아래 그림과 같이 권한을 줘 봤는데도, 저 에러는 해결되지 않았다.
The operation couldn’t be completed. Permission denied
Domain: NSPOSIXErrorDomain
Code: 13
Failure Reason: Permission denied
또 다른 방법으로,
- DerivedData 폴더 삭제
- 프로젝트 Clean
- Xcode 재설치
- [Build Setting]->[VALID_ARCHS] 삭제.
등으로 해결을 해보려 했지만, 잘 되지 않았다.
재미있는 사실은 시뮬로는 안되는데, Device직접설치로는 잘 됐어서, 그냥 포기하고 Device로 테스트 해야겠구나 하던 찰나에,
[Build Setting]->[VALID_ARCHS]를 삭제하지 않고,
x86_64
을 추가해 보았는데, 문제가 모두 해결되었다.
한마디로, [Excluded Architectures]를 사용하지 않고, [Build Setting]->[VALID_ARCHS]를 아래와 같이 설정했다.
arm64 armv7 x86_64
현재는 Simulator, Device모두 설치가 잘 된다.
프로젝트 별로 해결방법이 조금씩 다른거 같으니, 위에 나온 방법 모두 한번씩 해보길 바란다.
참고한 곳.
github.com/CocoaPods/CocoaPods/issues/10066
'게임을 만들자 > Error 해결' 카테고리의 다른 글
Unity, Mac, FirebaseCppApp bundle 을(를) 열 수 없습니다. (0) | 2022.05.09 |
---|---|
Mac Catalina, Visual Studio for Mac, Bad CPU type in executable (0) | 2020.09.28 |
Unity, Spine, SkeletonDataAsset has missing Atlas (0) | 2020.09.11 |
ios Admob Sdk Version 확인 (0) | 2020.05.10 |
리그오브레전드 친구목록 버그(게임접속 안됨) (2) | 2020.03.31 |