[objective-c] iOS-CocoaPods로 빌드 실패 헤더 파일을 찾을 수 없습니다

CocoaPods를 사용하는 iOS 프로젝트가 있습니다. 다른 개발자가 동일한 프로젝트에서 작업을 시작할 때까지 모든 것이 순조롭게 진행되었습니다. 그는 (내가 아는 한 코드에만) 약간의 변경을 가하고 repo에서 새로운 브랜치를 만들었습니다. 그의 지점을 체크 아웃하고 빌드하려고했지만 오류가 발생합니다. ASLogger / ASLogger.h 파일을 찾을 수 없습니다.

전체 프로젝트를 삭제하고 새로 복사하여 ‘pods install’을 사용하더라도. 빌드 실패는 여전히 존재합니다. 문제가 어디 있는지 알 수 있습니까? 더 많은 정보가 필요하면 물어보십시오.



답변

최신 정보

구성 파일이 누락 된 대상에 대한 Podfile포함 link_with을 확인하십시오 . Cocoapods 는 기본적으로 첫 번째 대상설정합니다 . 예 :

platform :osx, '10.7'
pod 'JSONKit',       '~> 1.4'

link_with 'Pomo', 'Pomo Dev', 'Pomo Tests'

—— 최종 업데이트


참고 : 아래 단계는 프로젝트-> 정보-> 구성을 참조해야합니다.


비슷한 증상이 있었고 빌드하려는 pods.xcconfig특정 파일에 파일이 포함되지 않은 것으로 나타났습니다 target. 다른 제안 된 솔루션 중 일부는 나를 위해 일했지만이 문제는 근본적인 문제의 일부를 해결하는 것처럼 보였습니다.

Pods.xcconfig가 작동하지 않습니다

간단한 해결책은 설정이없는 대상에 대한 구성 파일 설정을 변경하는 것입니다.

Pods.xcconfig 작동


답변

최신 정보

나는 원래의 대답 이후로 이것을 업데이트했으며, 그것은 downvote를 얻었으므로 이것이 도움이되기를 바랍니다. 그리고 만약 그렇다면, 그것은 내 투표를 되 찾을 수 있기를 바랍니다.

헤더를 가져 오지 않는 경우에 충돌이있을 수 있습니다 HEADER_SEARCH_PATHS. 시도하고 추가하십시오$(inherited)빌드 설정에서 헤더 검색 경로를 하고 CocoaPods에서 .xcconfig 파일에 포함 된 검색 경로를 가져 오도록하십시오.

이렇게하면 충돌에 도움이되고 소스를 올바르게 가져올 수 있습니다.


답변

1. 확인

빌드 설정-> 검색 경로-> 사용자 헤더 검색 경로->

  • “$ {PODS_ROOT} /”재귀

여기에 이미지 설명을 입력하십시오

여기에 이미지 설명을 입력하십시오

여기에 이미지 설명을 입력하십시오
여기에 이미지 설명을 입력하십시오

2. podfile설정 한 경우 가져 오기 스타일 (키포인트)을 확인하십시오.

use_frameworks!

귀하 File-Bridging-Header.h의 포맷터는 다음과 같아야합니다.

#import "MBProgressHUD.h"

그렇지 않으면 아래에 있어야합니다

#import <MBProgressHUD.h>

3. 그것이 작동해야합니다! 날 믿어


답변

헤더 파일, 당신은 저의 죽음이 될 것입니다 …

마지막으로 (따옴표 포함)을 추가하여 작동시킵니다.

"${PODS_ROOT}/BuildHeaders"

사용자 헤더 검색 경로 항목에 ‘재귀’를 확인하십시오.


답변

${PODS_HEADERS_SEARCH_PATHS}누락 된 것으로 나타 났으며 개발 git 브랜치에 정의되어 있지 않으므로 추가했습니다. "$(SRCROOT)/Pods/Headers/" 재귀와 헤더 검색 경로에 대한

괜찮습니다


답변

다른 답변은 여기에 도움이되지 않았습니다. 이 문제를 해결할 수있는 2 가지 다른 문제가 있습니다.

편집
이 방법으로 심볼릭 링크를 확인할 수 있습니다 : 확장자없이 ‘check’라는 텍스트 파일을 만듭니다. 이 줄들을 여기에 복사하십시오 :

file=/Users/youUserName/XcodeProjectName/Pods/BuildHeaders/SVProgressHUD/SVProgressHUD.h
if [[ ! -e $file &&  -L $file ]]; then
  echo "$file symlink is  broken!"
else
  echo "symlink works"
fi

그런 다음 터미널로 이동하여 확인 파일이있는 폴더로 변경하고 다음을 입력하십시오

bash check


답변

나를 위해 일한 것은 다음과 같습니다.

대상> “빌드 설정”탭으로 이동하여 “사용자 헤더 검색 경로”설정을 찾으십시오.

이것을 “$ (BUILT_PRODUCTS_DIR)”로 설정하고 “재귀”확인란을 선택하십시오.

이제 빌드 된 대상은 작업 공간의 공유 빌드 디렉토리를 검색하여 링크 가능한 헤더 파일을 찾습니다.

====

최신 정보

최근에 비슷한 (약간 다르지만) 문제가있었습니다. .xcodeproj파일이 아닌 파일을 열었으므로 Xcode에서 포드를 찾을 수 없습니다 .xcworkspace. 앞으로 다른 사람을 도울 수 있습니다.