얼마전에 Xcode를 14.3으로 올리고 나서 기존 프로젝트를 빌드하려고 하니 오류가 났다.
구글링을 해보니, CocoaPods 모듈들 Build Target을 잡지 못해 생기는 오류란다.
target 'xxxxxx' do
pod 'yyyyyyy'
pod 'zzzzzzz'
.....
post_install do |installer|
installer.generated_projects.each do |project|
project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '11.0'
end
end
end
end
end
열심히 코드를 수정하고 배포하려고 하는데 이번에는 Archive build 에서 말썽이 생겼다.
역시나 CocoaPods과 Xcode간의 연동 이슈라고 한다...
rsync error: some files could not be transferred (code 23) at /AppleInternal/Library/BuildRoots/97f6331a-ba75-11ed-a4bc-863efbbaf80d/Library/Caches/com.apple.xbs/Sources/rsync/rsync/main.c(996) [sender=2.6.9]
Command PhaseScriptExecution failed with a nonzero exit code
- Apple Developer Forum : https://developer.apple.com/forums/thread/725230?answerId=746897022#746897022
- 좋은 분 설명 : https://velog.io/@iwytbbtss/Xcode-iOS-16.4-Mac-OS-X-13.3-Xcode-14.3-%EC%97%85%EB%8D%B0%EC%9D%B4%ED%8A%B8-%EC%9D%B4%ED%9B%84-%EB%B9%8C%EB%93%9C-%EC%97%90%EB%9F%AC-%ED%95%B4%EA%B2%B0%EB%B2%95
# source="$(readlink "${source}")"
source="$(readlink -f "${source}")"
심볼릭링크가 연결되어 있는 원본파일을 찾는 명령어
-f option : symbolic link 원본의 절대 경로를 출력합니다.
$ readlink -f profile.sh
/home/ec2-user/.../profile.sh
응용
profile.sh
ABS_PATH=$(readlink -f $0)
echo ABS_PATH
chmod +x profile.sh # 실행 권한 부여
./profile.sh # 스크립트 파일 실행
=> 현재 profile.sh 의 절대경로 를 반환합니다.
이게 웃긴게 -f 옵션이 Xcode 14.2에서는 빌드 실패를 하게 만드는 원인이더라고요;