programing

프로젝트 빌드 시 코코아팟 오류

easyjava 2023. 4. 9. 22:30
반응형

프로젝트 빌드 시 코코아팟 오류

코코아팟을 사용하는 프로젝트를 만들 수 없습니다.다음의 에러가 표시됩니다.

diff: /../Podfile.lock: No such file or directory
diff: Manifest.lock: No such file or directory error: 
The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.`

$ pod install 것 , 「」라고 것이 추가해 주세요.Pods내 작업 공간에 투영합니다.$ pod update하지만 이건 도움이 안 돼요

PODS_ROOT가 설정되어 있지 않습니다.

팟 파일:

platform :ios, '6.0'

workspace 'Example.xcworkspace'
xcodeproj 'example/Example.xcodeproj' 

pod 'TestFlightSDK', '~> 1.3.0-beta.5'
pod 'TestFlightLogger', '~> 0.0.2'
pod 'CocoaLumberjack', '~> 1.6.2'
pod 'Reachability', '~> 3.1.0'
pod 'SBJson', '~> 3.2'
pod 'MKMapViewZoom', '~> 1.0.0'

팟파일은 워크스페이스 했습니다.pod install 추가:

rm -rf MyProject.xcworkspace
pod install

TLDR: 이것은 Xcode의 버그일 가능성이 높으며, 보통 프로젝트를 닫고 다시 여는 것이 가장 간단한 수정입니다.다른 모든 것이 올바르게 설정되어 있다고 가정합니다.


시 할 수 .Pods를 실행하고 .pod install.

프로젝트 정보에는 모두 올바르게 표시됩니다.

여기에 이미지 설명 입력

그러나 대상의 사용자 정의 빌드 설정으로 이동하면 하나 이상의 구성에 대해 PODS_ROOT 항목이 완전히 누락되거나 비어 있습니다.이로 인해 빌드 시 다음 오류가 발생합니다.

여기에 이미지 설명 입력

가장 간단한 수정은 Xcode로 프로젝트를 닫았다가 다시 여는 것입니다.

타겟의 빌드 설정으로 이동하여 모두로 필터링하면PODS_ROOT다음 중 하나:

여기에 이미지 설명 입력

이것으로, 에러 없이 빌드 됩니다.


주의: Coco Pods의 공식 AFNetworking iOS Example에도 이 문제가 있어 Xcode의 버그라고 생각합니다.

으로는 설정을 할 수 .None: 원래 으로 되돌아가다.

여기에 이미지 설명 입력

의 「★★★★★★★★★★★★★★★★★★★★★★★★★★」Build Settings" " " " " " "'의 값을 합니다.PODS_ROOT는 「」와 같습니다.${SRCROOT}/Pods'무엇을 하다'라고 합니다.

여기에 이미지 설명 입력

업데이트: apodfile.lock는 필수적이며 버전 제어에 의해 무시되어서는 안 됩니다.이는 특정 포드 설치 시 설치된 라이브러리의 버전을 추적합니다.(각각 레일 및 php 의존관리의 경우 gemfile.lock과 composer.lock과 유사합니다).자세한 내용은 문서를 참조하십시오.크레딧은 cbowns에 있습니다.


제 경우 프로젝트를 위해 집안 청소를 하고 있었습니다(즉, 통합 테스트를 git 서브 모듈로 분기하고 있었습니다.중복 파일 삭제 등)..최종 결과를 git 리모트 리포에 푸시했습니다.나의 repo를 복제한 모든 클라이언트는 위의 오류로 인해 어려움을 겪었습니다.위의 Hlung의 코멘트에서 영감을 얻어 존재하지 않는 파일에 대해 실행하려고 하는 몇 가지 팟 스크립트가 있다는 것을 알게 되었습니다.그래서 목표 빌드 단계로 가서 코코아 포드와 관련된 나머지 단계를 모두 삭제했습니다(그리고 Hlung의 코멘트는 삭제하도록 제안합니다).Copy Pods Manifest.lock ★★★★★★★★★★★★★★★★★」copy pod resourcesXcode 5는 Xcode 5입니다.요점은 매달린 빌드 단계를 삭제하는 것입니다.)

코코아팟이 내 프로젝트의 구성을 설정하지 않은 것 같습니다.이 되어야 .Pods.xcconfig에 기재되어 있습니다.Pods/Target Support Files/Pods이 하기 위해

  1. 복사하지 않도록 선택한 후 이 파일을 Xcode의 Xcode 프로젝트로 끌어다 놓으십시오.
  2. 할 수 .여기에 이미지 설명 입력

그 후 다른 빌드 오류가 발생했는데, 관련이 있을 수도 있고 없을 수도 있습니다. 되어 있는 셸 .Copy Pods Resources렸습니니다다

"${SRCROOT}/Pods/Pods-resources.sh"

올바르게 해결되지 않았다.SRCROOT는 경로에 존재하지 않는 추가 dir를 추가하는 것처럼 보였다.그래서 Project 폴더 경로를 하드코딩했습니다.

이렇게 해서 만들 수 있었어요.

왜 그렇게 많은 시간을 절약해야 하는 것들이 결국 그걸 먹어 치우는 거지?

주의: 자세한 내용은 @abood의 답변을 참조하십시오.

이와 유사한 문제가 있습니다. 이것이 효과가 있었습니다.

  1. X★★★★★★★★★★★★★★★★★★:
    • 깨끗한
    • Xcode/Windows/Organizer/Project/Your Project에서 파생 데이터 삭제
    • Pod 디렉토리(설정 파일이 포함되어 있습니다.참조뿐만 아니라 파일도 삭제합니다!)
    • 프로젝트/구성 대상별로 포드 구성 파일에 대한 참조를 모두 삭제(디버깅/릴리스)
    • 모든 타깃에서 "타깃/빌드 단계/복사 포드 리소스"를 삭제
    • 모든 대상에서 "Targets/Build Settings/User-Defined/PODS_ROOT"를 제거했습니다.
  2. X코드 종료
  3. ★★★★★★★★★★★★★★★★★★★★★:
    • rm - rf 팟
    • (임의) rm -rf Your Project.xcworkspace
    • rm - rf Podfile.lock
  4. 팟 설치
  5. 프로젝트를 엽니다.Xcode의 xcworkspace

같은 문제를 해결하려면 다음 절차를 따릅니다.

  • Xcode->Product->Clean Build Folder(제품의 alt 키를 누르고 표시)
  • .Xcode->Window->Organizer 을 선택합니다.Projects탭. 그런 다음 프로젝트를 찾아서 삭제하십시오. derived data프로젝트 내용입니다.

다음의 조작으로 간단하게 해결할 수 있습니다.

  • 보석을 박는 고치

  • 팟 설치

  • 깨끗이 지우다

이 문제는 우리 팀원 중 한 명이 최근에 고치 보석을 설치했기 때문에 발생한 것으로 보입니다.

  1. .xcodeproj 파일을 숭고한 텍스트로 엽니다.
  2. 이 두 줄을 제거합니다. 깨끗한 팟 폴더가 있는 경우, 팟 폴더를 제거한 후 위의 오류가 발생한 경우

/Pods/Pods-Resources 라고 하는 같은 문제가 발생.sh: 포드와 관련된 파일 등을 삭제해도 해당 파일 또는 디렉토리가 없습니다.

타겟→빌드 단계로 이동하여 빌드 단계 "Copy Pod Resources"를 삭제하여 삭제.

저도 최근에 같은 문제가 있었어요.가능한 모든 조언을 해봤지만, 이 플러그인이 나에게 효과가 있는 것 외에는 아무것도 없었다.

https://github.com/kylef/cocoapods-deintegrate

현재 cocods 통합을 정리한 후 삭제해야 할 것은 Podfile, Podfile.lock 및 .xcworkspace입니다.그럼 다시 설치하세요.

제가 이 일을 누군가 돕기를 바랍니다.

이 문제로 해결되었습니다.

  1. 프로젝트 대상 선택
  2. 빌드 설정 선택
  3. [ Open User - Defined ]드롭다운리스트
  4. 주요 PODS_ROOT 값을 ${SRCROOT}/Pods로 변경

상기 스텝의 스크린샷

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
하겠습니다.Pods와 ""Podfile.lockpod install문제를 해결하기 위해 다시 한 번복합니다.

그것은 매우 직관적이지 않았다.기본 프로젝트 설정으로 이동한 후 Check Pods Manifest.lock 아래에 있는 pod.lock 및 pod.manifest 경로를 하드코딩했습니다.이러한 경로는 실제로는 다른 폴더에 있기 때문에 다음과 같습니다.

diff "/Users/admin/Desktop/Experimental/projectfolder/Podfile.lock" "/Users/admin/Desktop/Experimental/projectfolder/Pods/Manifest.lock" > /dev/null
if [[ $? != 0 ]] ; then
    cat << EOM
error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.
EOM
    exit 1
fi

다음을 시도해 볼 수 있습니다.그것은 나를 고쳤다.

  1. 보석을 설치하다
  2. 보석을 설치하다
  3. goto pod 통합
  4. 팟 클린
  5. 팟 설치

프로젝트를 위해 고치에서 플러그인이 제거되고 새로 설치됩니다.

제 경우, 이것은 테스트 대상입니다.팟 파일 내에서 모든 팟을 제거했습니다(나중에 팟을 추가했기 때문에 나중에 그 타겟에 필요하지 않다는 것을 깨달았습니다).여기 있는 다른 해결책들은 제게 효과가 없었습니다.

  1. 문제의 원인이 되는 대상에 대한 프로젝트 설정의 빌드 단계 탭으로 이동합니다.

  2. "Check Pods Manifest" 및 "Copy Pods Resources" 섹션을 삭제합니다.

  3. "라이브러리와 바이너리 연결"에서 libPods-YourTarget.a를 제거합니다.

  4. [정보(Info)]탭의 프로젝트 설정에서 [구성(Configurations)]를 펼쳐 디버깅과 릴리스 모두에 대해 타겟 구성을 [없음(None)]으로 설정합니다.(이것에 의해, 몇개의 누락 파일의 경고가 수정됩니다)

  5. 프로젝트의 파생 데이터를 삭제하고([Windows]> [ Projects ]> [ Delete ](프로젝트 옆) Xcode 를 재기동합니다.대상을 빌드/실행합니다.

오늘 정말 즐거웠어!

  1. 프로젝트 폴더의 Podfile.lock 파일 삭제
  2. 프로젝트 폴더에서 Pods 폴더
  3. ★★pod install project folder (프로젝트 )
  4. Xcode로 "클린"을 수행합니다.
  5. 프로젝트 재구축

IONIC 프로젝트에서도 같은 문제가 있었습니다.무엇보다 해결하려고 했지만, 운은 좋지 않았습니다.

같은 는, 아래의 설정이 「 」에 있는 .Build Settings -> User-Defined settings '아니요'가 아닙니다.

1.PODS_ROOT 2.PODS_PODFILE_DIR_PATH

존재하지 않으면 추가합니다.

PODS_ROOT = ${SRCROOT}/Pods

PODS_PODFILE_DIR_PATH = ${SRCROOT}/

문제 해결, 솔루션 링크

제 경우 문제가 잘못된 방법으로 발생하였습니다.해결방법은 이쪽 。

문제가 있는 것 같으면 우선 프로젝트의 빌드 설정에 있는 Pods.xcconfig 파일에서 설정된 옵션을 완전히 덮어쓰지 않도록 하십시오.프로젝트의 빌드 설정에서 옵션에 값을 추가하려면 값 목록 앞에 $(상속됨)를 추가합니다.

이런 문제가 있었어요.

수정 방법은 Pod를 완전히 삭제하고 다시 구현하는 것이었습니다.다음 설명에 따라 모든 타깃의 "Build Phase"에서 "Copy Pods Resources" 및 "Check Pods Manifest.lock"을 삭제하십시오.프로젝트에서 코코아팟을 제거하는 방법

를 없애기 , 저는 이 에러를 .Pods하고, 「」를 합니다.Podfile.lock

제 경우 Podfile.lock & Manifest.lock을 소스 컨트롤에 넣었는데 Pods-Project.debug(릴리스)를 추가하는 것을 잊었습니다.xcconfig 파일을 소스 제어에 (*.xcconfig를 .gitignore에 잘못 추가함으로써) 동일한 컴파일 오류가 발생하였습니다.그 이유는 PODS_ROOT가 설정되어 있지 않습니다.

따라서 Repo를 복제한 후 기계에 코코아팟을 설치하지 않고도 프로젝트를 즉시 빌드 및 실행할 수 있는 경우 소스 제어에 전체 Pods 디렉토리를 추가하거나 Podfile.lock, Manifest.lock, 프로젝트의 xcconfig 파일 및 Pods xcconfig 파일을 소스 제어에 추가합니다.

빌드 설정을 기본 코코아팟 구성과 병합하는 개인 .xcconfig를 소스 제어에 넣지 않았습니다.

몇 시간 동안 솔루션을 찾은 후 "Build Phase"로 이동하고 "Check Pods Manifest.lock"을 선택하여 "설치 시 스크립트만 실행"을 선택합니다.

나중에 고마워;)여기에 이미지 설명 입력

포드를 사용하기 전에 여러 대상을 만들었습니다.나중에 다른 타깃 컴파일을 시작할 때 podfile에 있는 타깃 목록과 함께 link_with를 추가해야 했습니다.

저도 같은 문제가 있었어요.최근 단계를 다시 추적한 결과 새 타깃에 타깃 선언을 추가한 후 실행이 문제의 원인임을 알 수 있었습니다.

여기에 이미지 설명 입력

Cocapods가 소스 제어가 되지 않는 파일을 하나 이상 수정했기 때문에 브랜치를 리셋하고 프로젝트를 정리하는 작업이 작동하지 않았습니다.이것은 리모트브런치를 커밋으로 리셋한 후 타겟을 추가하고 리포(repo)를 다시 클로닝하면 문제가 발생하지 않게 되었기 때문입니다.

시계를 가지고 있다면OS 타깃:갑자기 시계 연장 부분에 포드가 있지만 시계 대상 자체에 포드가 없는 것이 같은 오류로 인해 고장이 난 것을 발견했습니다.해결책은 감시 대상에도 팟을 추가하는 것이었습니다.

gem install xcodeproj

도움이 될 거야

포드 설치에 실패하고 중단 - New Swift 프로젝트를 참조하십시오.

Podfile 작성 후 새로운 타깃을 추가한 경우 Podfile, Podfile.lock, Pods 폴더 및 워크스페이스를 삭제하고 pods를 초기화하여 pods를 설치합니다.

내용을 해 본 , 저는 하고 있는 .pod install

[!" 프로젝트에 사용자 지정 구성 세트가 이미 있기 때문에 코코아팟이 프로젝트의 기본 구성을 설정하지 않았습니다.

cocods가 .xcconfig 파일을 프로젝트에 추가하지 않았기 때문에 이것이 에러의 원인이 되었습니다.

문제를 저는 ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★에 갔습니다.Info탭으로 이동합니다.을 " "으로합니다.None모든 스킴과 타겟에 대응합니다. 다음 다시 실행해 주세요.pod install

자세한 내용은 이 링크를 참조하십시오.Cocoapods 경고 - 프로젝트에 커스텀 구성이 이미 설정되어 있기 때문에 코코아팟이 프로젝트의 기본 구성을 설정하지 않았습니다.

제 경우 컨피규레이션파일 끝에 불필요한 점을 잘못 입력했기 때문에 이 이상한 문제가 발생했습니다.구성 파일에 오류가 없는지 확인하십시오.

언급URL : https://stackoverflow.com/questions/17072396/cocoapods-errors-on-project-build

반응형