IT박스

이유 : 적합한 이미지가 없습니다.

itboxs 2020. 7. 24. 07:53
반응형

이유 : 적합한 이미지가 없습니다.


dyld: Library not loaded: @rpath/libswiftCore.dylib
  Referenced from: /var/mobile/Containers/Bundle/Application/3FC2DC5C-A908-42C4-8508-1320E01E0D5B/Stylist.app/Stylist
  Reason: no suitable image found.  Did find:
    /private/var/mobile/Containers/Bundle/Application/3FC2DC5C-A908-42C4-8508-1320E01E0D5B/testapp.app/Frameworks/libswiftCore.dylib: mmap() errno=1 validating first page of '/private/var/mobile/Containers/Bundle/Application/3FC2DC5C-A908-42C4-8508-1320E01E0D5B/testapp.app/Frameworks/libswiftCore.dylib'
(lldb) 

iPhone을 빌드 할 때이 오류가 발생합니다. 시뮬레이터를 만들 수 있습니다. 모든 프로비저닝 파일을 다시 작성했지만 여전히 iPhone에서 빌드 할 수 없습니다. 내 Xcode는 다음과 같습니다

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

이것이 프레임 워크 문제입니까 아니면 서명 문제입니까? 이것은 Xcode 6에서는 발생하지 않았습니다. 감사합니다.


실수로 인증서를 해지 한 적이 있기 때문에이 문제가 있습니다. 그런 다음 모든 신속한 프로젝트 에이 문제가 있습니다. 이 문제를 해결하는 두 가지 방법이 있습니다.

제품-> 청소 (또는 CMD-Shift-K)를 클릭하십시오.

또는 Xcode 설정 파일을 수동으로 정리하여 :

rm -rf "$(getconf DARWIN_USER_CACHE_DIR)/org.llvm.clang/ModuleCache"
rm -rf ~/Library/Developer/Xcode/DerivedData
rm -rf ~/Library/Caches/com.apple.dt.Xcode

나는 왜 그런지 전혀 모른다. 도움이 되길 바랍니다.


Xcode->Product->Clean + Xcode Restart

언급 된 다른 많은 솔루션을 시도한 후, 영원한 부끄러움에 Xcode-> Product-> Clean을 수행하고 Xcode를 다시 시작하면 트릭을 수행했습니다.


이 문제에 대해 오랫동안 검색했습니다. 이 문제의 원인은 여러 가지가 있습니다.

Objectice C 프로젝트에서 Swift 코드 / 라이브러리를 사용할 때 직면하는 경우 솔루션 1-2-3을 시도해야합니다

새로운 Swift 프로젝트 솔루션 4로이 문제에 직면 한 경우 가장 적합합니다.

해결책 1 :

Xcode를 재시작 한 다음 컴퓨터와 iPhone

해결책 2 :

프로젝트 빌드 설정으로 이동하여 Embedded Content Contains Swift코드 플래그를 예로 설정하십시오.

해결책 3 :

프로젝트 빌드 설정으로 이동하고 @executable_path/Frameworks런 패스 검색 경로 옵션에 추가

해결책 4 :

위의 방법 중 어느 것도 작동하지 않으면 이것이되어야합니다. AirSign의 게시물에 언급 된 것처럼 Apple은 닌자 패치 인증서 인 것 같습니다.

InHouse 인증서

Subject: UID=269J2W3P2L, CN=iPhone Distribution: Company Name, O=Company Name, C=FR

그들은 새로운 필드를 추가했습니다 OU

Subject: UID=269J2W3P2L, CN=iPhone Distribution: Company Name, OU=269J2W3P2L, O=Company Name, C=FR

인증서와 프로 비전을 다시 만들어야합니다


나 에게이 문제는 WWRD 인증서로 인해 나타났습니다. 광산은 최신 상태이지만 어떤 이유로 든 '시스템 기본값 사용'대신 '항상 신뢰'로 설정되어 분명히 차이가 있습니다.


실수로 키 체인을 재설정하면 키 체인에 Apple 인증서가 없어서 발생할 수 있습니다. 나는 이것대한 답을 따라 문제를 해결했다.

나는 같은 문제가 있었고 WWDR (Apple Worldwide Developer Relations Certification Authority)을 다시 다운로드하여 해결할 수있었습니다. 여기에서 다운로드하십시오 : http://developer.apple.com/certificationauthority/AppleWWDRCA.cer


DerivedData를 제거하면 속임수가되었습니다.

Xcode-> 환경 설정-> 위치-> DerivedData 경로 뒤에있는 화살표를 클릭하고 Finder에서 전체 DerivedData 폴더를 제거했습니다.


xcodebuild 및 xcrun PackageApplication을 통해 명령 줄에서 응용 프로그램을 빌드하고 엔터프라이즈 프로파일로 응용 프로그램에 서명 할 때 내 편에서 발생했습니다. CI 빌드 서버에서 인증서는 키 체인에서 "항상 신뢰"로 설정되었습니다 (인증서 선택-> 정보 입수-> 신뢰-> "시스템 기본값 사용"은 "항상 신뢰"로 변경 가능). 이 작업을 수행하려면 "시스템 기본값 사용"으로 다시 설정해야합니다. 처음에는 소프트웨어 업데이트 및 인증서 업데이트 후에 나타나는 키 체인 대화 상자를 해결하기 위해 "항상 신뢰"로 설정했습니다.


더 많은 혼란을 겪을 위험이 있으므로 XC8로 업데이트 할 때이 문제가 발생했습니다.

이러한 제안 중 어느 것도 다른 스레드에서 해결하지 못했습니다. DID의 작동 방식은 "라이브러리와 바이너리 연결"빌드 단계, "대상 종속성"빌드 단계 및 "링크 된 프레임 워크 및 라이브러리"일반 설정에서 모든 것을 제거하는 것이 었습니다.

참고로, Carthage를 사용 $(PROJECT_DIR)/Carthage/Build/tvOS하고 있으며 FRAMEWORK_SEARCH_PATHS빌드 설정에 추가 되어 내 프레임 워크를 찾을 수 있습니다.

FYI 2,이 프로젝트와 프레임 워크는 100 % 신속하고 프레임 워크가 구축 중 DEFINES_MODULE = YES입니다.


  1. 기기에서 앱 제거
  2. 프로젝트 정리 ( CMD+ SHift+ K)
  3. 장치에서 빌드 / 실행

기술 Q & A QA1886 에서 인용 :

Swift 라이브러리 libswiftCore.dylib를 참조하려고하면 Swift 앱이 충돌합니다.

Q : Swift 언어 앱을 실행할 때 발생하는 장치 콘솔의 libswiftCore.dylib 로딩 오류에 대해 어떻게해야합니까?

A :이 문제를 해결하려면 OU (Subject Organizational Unit)가 팀 ID로 설정된 코드 서명 인증서를 사용하여 앱에 서명해야합니다. iOS 8이 출시 된 후 생성 된 모든 엔터프라이즈 및 표준 iOS 개발자 인증서에는 Swift 언어 앱을 실행할 수있는 적절한 위치에 새로운 팀 ID 필드가 있습니다.

일반적으로이 오류는 다음 중 하나와 유사한 메시지와 함께 장치의 콘솔 로그에 나타납니다. [....] [deny-mmap] 매핑 된 파일에는 팀 식별자가 없으며 플랫폼 바이너리가 아닙니다. / private / var / mobile / 컨테이너 / 번들 / 애플리케이션 /5D8FB2F7-1083-4564-94B2-0CB7DC75C9D1/YourAppNameHere.app/Frameworks/libswiftCore.dylib

Dyld Error Message:
  Library not loaded: @rpath/libswiftCore.dylib

Exception Type: EXC_BREAKPOINT (SIGTRAP)
Exception Codes: 0x0000000000000001, 0x0000000120021088
Triggered by Thread: 0

Referenced from: /private/var/mobile/Containers/Bundle/Application/C3DCD586-2A40-4C7C-AA2B-64EDAE8339E2/TestApp.app/TestApp
Reason: no suitable image found. Did find:
/private/var/mobile/Containers/Bundle/Application/C3DCD586-2A40-4C7C-AA2B-64EDAE8339E2/TestApp.app/Frameworks/libswiftCore.dylib: mmap() error 1 at address=0x1001D8000, size=0x00194000 segment=__TEXT in Segment::map() mapping /private/var/mobile/Containers/Bundle/Application/C3DCD586-2A40-4C7C-AA2B-64EDAE8339E2/TestApp.app/Frameworks/libswiftCore.dylib
Dyld Version: 353.5

아카이브를 구축하고 앱을 패키징 할 때 새로운 인증서가 필요합니다. 새 인증서 중 하나가 있더라도 기존의 신속한 앱 아카이브를 사임해도 작동하지 않습니다. iOS 8 이전 인증서로 빌드 된 경우 다른 아카이브를 빌드해야합니다.

중요 : 새 Enterprise Distribution 인증서를 취소하고 설정해야하는 경우주의하십시오. 사내 엔터프라이즈 개발자 인 경우 엔터프라이즈 직원 중 한 명이 여전히 해당 엔터프라이즈 배포 인증서로 서명 된 앱으로 사용하는 앱에 서명하는 데 사용 된 배포 인증서를 해지하지 않도록주의해야합니다. 즉시 작동이 중지됩니다. 위의 내용은 Enterprise Distribution 인증서에만 적용됩니다. 기업 / 표준 iOS 개발자는 개발 인증서를 안전하게 폐기 할 수 있습니다.

AirSign 직원은 사내 인증서의 제목 필드에 누락 된 OU 속성에서 문제가 발생했음을 나타냅니다.

제목 : UID = 269J2W3P2L, CN = iPhone 배포 : 회사 이름, OU = 269J2W3P2L, O = 회사 이름, C = FR

엔터프라이즈 개발 인증서가 있는데 새 인증서를 만들면 문제가 해결되었습니다.


해당 라이브러리에 올바른 아치가 없을 수도 있습니다.

file /private/var/mobile/Containers/Bundle/Application/3FC2DC5C-A908-42C4-8508-1320E01E0D5B/testapp.app/Frameworks/libswiftCore.dylib

그리고 그것은 당신에게 그 라이브러리에있는 아치를 보여 줄 것입니다 ... 나는 당신이 어떻게 연결하고 있는지 잘 모르겠지만, 아마도 올바른 방법이 아닐 것입니다 (libswiftcore가 팩토리 라이브러리라면 라이브러리에 추가한다면 아마 올바르게 컴파일되지 않았습니다)


나도이 문제를 겪었지만 위의 시도와 다른 게시물에서 아무것도 시도하지 않았습니다.

배포와 개발을 위해 번들 ID가 다르기 때문에 번들 식별자를 변경했습니다.

이 조항에 내 하드웨어가 허용되고 팀 계정이 유효하지만 다른 프레임 워크에서 위의 오류가 발생했습니다.

내 휴대 전화에서 이전 버전의 앱을 완전히 제거해야한다는 것이 밝혀졌습니다. 표준 방법 만 삭제하는 것이 아닙니다.

해결책 :

  1. 대상 전화가 연결되어 있는지 확인
  2. xcode 메뉴에서 [Window> Devices]를 클릭하십시오.
  3. 왼쪽 메뉴에서 대상 장치를 선택하십시오.
  4. 오른쪽에는 장치 내의 응용 프로그램 목록이 있습니다. 테스트하려는 응용 프로그램을 찾아서 제거하십시오.

처음부터 완전히 시작하지 않은 경우 동일한 번들로 동일한 팀에 다른 번들 ID로 동일한 앱을 설치하는 경우에는 혼란에 빠지는 프레임 워크에 대한 참조가 있습니다.

이것이 누군가를 돕기를 바랍니다.


방금 프로젝트를 청소하고 Clean Build Folderalt 제품 메뉴로


아래 단계가 성공적으로 수행되었습니다.

1) 동적 라이브러리에서 설치 이름은 "@loader_path"여야합니다.

2) 메인 프로젝트에서 Runpath 검색 경로는 "@loader_path"및 "@ loader_path / Frameworks"여야합니다.

3) 키 체인 사용보기-> 만료 된 인증서 표시 및 모든 것을 제거했습니다.

4) 배포 인증서를 삭제하고 다시 설치하십시오.

5) developer.apple.com/certificationauthority/AppleWWDRCA.cer을 다운로드하여 설치했습니다.


인증서를 재생성하고 iPhone을 재시동 할 수 있습니다.

이 작업은 저에게 도움이 되었기를 바랍니다.


로컬 키 체인을 확인하여 문제를 해결합니다 .Keep login.keychain에 올바른 인증서가 있습니다.


나는 최근 에이 문제에 직면했다. 가능한 모든 해결책을 시도했지만 아무것도 효과가 없었습니다. 마지막으로 Xcode를 종료하고 키 체인에서 인증서를 제거하고 모든 것을 새로 설치하고 다시 시작했습니다. 다행히도 그것은 매력처럼 작동했습니다 :)


나는 같은 문제가 있었고를 다시 다운로드하여 해결할 수있었습니다 WWDR (Apple Worldwide Developer Relations Certification Authority). 여기 에서 다운로드 하십시오 :

키 체인에서 항상 신뢰설정합니다 . 로 변경Use System Default

그것은 나를 위해 작동, 나는 이것이 당신을 돕기를 바랍니다


제 경우에는 키 체인이 인증서를 신뢰할 수없는 것으로 표시하고 있습니다.이 문제를 해결하기 위해 인증서의 신뢰 옵션을 "항상 신뢰"로 설정했습니다. 인증서는 "항상 신뢰"로 설정하는 것이 충돌의 주요 원인이었습니다. 장치에 응용 프로그램을 설치할 수 없습니다. 신뢰 옵션을 "항상 신뢰"대신 "시스템 기본값"으로 설정하여이 문제를 해결했습니다.


Xamarin Studio에서 작업 중이고 PCL 미끼 및 스위치 트릭을 수행해야하는 휴대용 라이브러리를 참조하는 경우 동일한 증상이 나타납니다. 참조하는 프로젝트가 참조 된 라이브러리와 관련하여 오래된 경우에 발생합니다. 공통 라이브러리를 최신 프레임 워크로 업데이트하고 패키지를 업데이트했지만 iOS 패키지가 일치하도록 업데이트하지 않은 것을 발견했습니다. 패키지를 업데이트하면이 오류가 해결되었습니다.


@Jieyi Hu Answer를 시도한 후에도 여전히이 문제가 발생할 수 있습니다. 수정 된 것처럼 보이지만 다시 올 경우 (xCode 9에서 가능할 수 있음).

그러나이 해결 방법이 효과가있는 것 같습니다 (Cocoapods 1.5.x에 적용됨).

  1. 프로젝트를 청소하십시오
  2. Xcode를 닫고 DerivedData를 삭제하십시오.
  3. 프로젝트에서 Podfile을 열고 다음을 추가하십시오.

    post_install do |installer| installer.pods_project.build_configurations.each do |config| config.build_settings.delete('CODE_SIGNING_ALLOWED') config.build_settings.delete('CODE_SIGNING_REQUIRED') end end

  4. 포드 업데이트

출처 :

https://github.com/evgenyneu/Cosmos/issues/105

https://github.com/Skyscanner/SkyFloatingLabelTextField/issues/201#issuecomment-381915911

감사합니다 @ Cédric


프로젝트에서 (직접 또는 간접적으로) 연결하는 모든 동적 프레임 워크마다 인증서 (프로비저닝 프로파일이 아닌 인증서 만)를 설정해야합니다.여기에 이미지 설명을 입력하십시오


필자의 경우 Xcode에서 생성하고 다운로드 한 모든 인증을 삭제 한 후. xcode 8.1이 앱의 인증을 관리하게하십시오. 이것이 누군가를 도울 수 있기를 바랍니다.


시뮬레이터에서만이 문제가 발생했습니다. 응용 프로그램의 일부 잘못된 권한과 관련이있는 것으로 보이지만 장치에서 실행할 때 문제가 나타나지 않습니다.


이 트릭을 사용하여 해결했습니다.

1 단계:

프로젝트 빌드 설정으로 이동하여 @ executable_path / Frameworks를 Runpath 검색 경로 옵션에 추가하십시오.

2 단계:

Go to target build settings and add @executable_path/Frameworks to Runpath Search Paths option and Framework Search Paths.

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

Step 3:

Re-downloading the WWDR (Apple Worldwide Developer Relations Certification Authority), set to Use System Default as option.

Step 4:

Delete All derived Data using Terminal

rm -rf ~/Library/Developer/Xcode/DerivedData/*

Step 5:

Delete All Certificates and reinstalled it to Keychain. I enabled the Use System Default option.

Step 6:

Restart Xcode.


faced same issue

  1. my developer certificate was expired so created new developer certificate and download
  2. clean and restart xcode this works for me

I ran into this issue with XCode 9. Nothing of the above worked out. This did the trick for me:

Project > Build Settings > Swift Compiler - Search Path: Setting "Import Paths" to $(PROJECT_DIR) (recursive)


This resolved my error-

Re-downloading the WWDR (Apple Worldwide Developer Relations Certification Authority), set to Use System Default as option.


제 경우에는 사용중인 포드 중 하나에 문제가있었습니다. 결국 해당 포드를 제거하고 코드를 프로젝트에 수동으로 배치했습니다.


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

첫 번째 이미지와 같은 세부 정보가 비슷한 문제가 있습니다.

내 솔루션은 인증이 항상 시스템 기본값을 사용하도록 신뢰하는 것입니다. 그냥 : 여기 에 이미지 설명을 입력 하십시오 여기 에 이미지 설명을 입력하십시오

참고 URL : https://stackoverflow.com/questions/32730312/reason-no-suitable-image-found

반응형