xcode 빌드 시 Build Failed 발생

 

확인 결과 , Pods 폴더에 설치된 외부 라이브러리에서 오류 발생

 

pod 재설치 GoGo

 

1.XCODE 프로그램 종료

2. ~/Library/Developer/Xcode/DerivedData 에서 프로젝트 임시 파일들 삭제

 

숨김 파일 보이기 단축키는 command+shift+. (dot)

3. ProjectName.xcworkspace 파일 삭제

- 프로젝트 경로에서 projectName.xcworkspace 파일 삭제

4.Podfile.lock 파일 과 Pods 폴더 삭제

5. 해당 경로에서 터미널 창 열고 pod install 실행

 

-참고-

특정 라이브러리 설치 시 오류

[!] FirebaseAnalytics requires CocoaPods version >= 1.12.0, which is not satisfied by your current version, 1.10.1.

 

CocoaPods 업데이트 실시

sudo gem install cocoapods

<!-- 업데이트 후 버전 확인 -->
pod --version

 

cocoapods 업데이트 시 아래와 같은 오류 발생되면..

xcodeproj's executable "xcodeproj" conflicts with /usr/local/bin/xcodeproj
Overwrite the executable? [yN]  ERROR:  Error installing cocoapods:
	"xcodeproj" from xcodeproj conflicts with /usr/local/bin/xcodeproj

 

 

Gem 설치 경로를 강제로 덮어쓰기

xcodeproj가 설치될 때 충돌하는 파일을 덮어쓰도록 허용할 수 있습니다. Overwrite the executable? [yN] 메시지가 나타날 때 y를 입력하여 덮어쓰기를 허용하면 됩니다.

만약 여전히 오류가 발생한다면, 설치할 때 --force 플래그를 추가해 강제로 설치할 수 있습니다:

sudo gem install cocoapods --force
 

Gem 업데이트 시 --user-install 사용

시스템 전체에 설치하지 않고 사용자 디렉터리에 설치할 수 있습니다:

gem install cocoapods --user-install
 

 

 

'iOS' 카테고리의 다른 글

Command PhaseScriptExecution failed with a nonzero exit code  (0) 2024.04.01

 

Build 및 Debug 로는 정상 동작하지만,  Product > Archieve 실행하면 위 이미지처럼  "Command PhaseScriptExecution failed with a nonzero exit code"  에러 발생..

 

pod install로 추가한 library 가 잘못된 모양..

 

/Users/macos/Library/Developer/Xcode/DerivedData 의 프로젝트 임시 데이터 삭제 후

podfile.lock, Pods 폴더, .xcworkspace 파일 삭제 후 pod install 로 재설치 후 해도 같은 증상

 

확인 결과 아래 경로의 Pods-{프로젝트 이름}-frameworks 파일의 코드에서 source="$(readlink  "${source}")  중간에  "-f" 추가

 

local destination="${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"

  if [ -L "${source}" ]; then
    echo "Symlinked..."
    source="$(readlink -f "${source}")" // "-f" 추가
  fi

 

정상적으로 archieve 되는 것 확인

 

여기서 -f 옵션은 'readlink'가 심볼릭 링크를 따라가면서 실제 파일이나 디렉토리의 절대 경로를 출력하도록 하는 역할을 함

즉, '-f' 옵션을 사용하면 스크립트가 가리키는 파일이나 디렉토리의 실제 경로를 찾을 수 있음. 이는 특히 상대 경로를 포함하는 스크립트에서 유용하며, 심볼릭 링크를 사용하여 다른 위치에 있는 파일을 참조하는 경우에 특히 유용함.

'iOS' 카테고리의 다른 글

[Xcode] CocoaPods 재설치  (0) 2024.10.31

+ Recent posts