2016-07-11 9 views
0

에 내가 오류입니다 :스위프트 프레임 워크는 시뮬레이터에 목표 C 응용 프로그램의 부하는 아니지만 여기에 장치

dyld: Library not loaded: @rpath/AAA.framework/AAA 
    Referenced from: /var/containers/Bundle/Application/7250F8A6-E0D8-4BF2-BBD9-F1315D1439F7/BBB.app/BBB 
    Reason: image not found 
  • 이이 엑스 코드 7.3.1를 사용하여 구축된다.
  • 나는 다른 답변에서 다른 조언을 따랐습니다.
    • 프레임 워크는 "링크 된 프레임 워크 및 라이브러리"에 있습니다.
    • 프레임 워크는 "라이브러리와 이진 링크"에 있습니다.
    • LD_RUNPATH_SEARCH_PATHS$(inherited) @executable_path/Frameworks으로 설정됩니다.
    • EMBEDDED_CONTENT_CONTAINS_SWIFTYES입니다.
    • 프로젝트 "파생 된 데이터>"삭제 ... "를 완료하고 Mac과 iPad를 모두 재부팅했습니다.
    • 코코아 포드 또는 카르타고가 사용되지 않았습니다.

는 내가 부족 다른 있나요? 나는 Stackoverflow에 대한 답변을 찾을 수 없었습니다.

답변

0

앱과 함께 기기에 복사되지 않았기 때문에 프레임 워크 바이너리를로드 할 수 없습니다. 앱 타겟의 빌드 단계 인 Embed Frameworks*.framework 파일을 추가해야합니다. 이렇게하면 프레임 워크가 앱 번들 내의 Frameworks 폴더로 복사되어 앱이로드 할 수있게됩니다.

임베드 프레임 워크

이 개 당신의 응용 프로그램에 프레임 워크를 포함하는 방법이 있습니다 : 대상의 빌드 설정에 General 탭을 사용하여

  1. 가. General Tab

  2. 대상의 빌드 설정에서 Build Phases 탭을 사용하십시오.

Build Phases Tab을 참고 : 당신의 프레임 워크는 Link Binary with Libraries 빌드 단계에 추가 된 경우가 추가되기 전에 다시 같은 프레임 워크에 대한 두 개의 참조 당신을 떠나.

+0

"링크 바이너리 라이브러리"에서 프레임 워크를 사용하는 것이 좋습니다. 그렇지 않다면 어떻게해야합니까? –

+0

불행히도 그것은 아닙니다. 그것은 다른 방향으로 만 작동합니다. 프레임 워크를'Embed Frameworks' Build Phase에 추가하면'Link With Binary With Libraries' Build Phase에 추가됩니다. 앞의 빌드 단계에 추가하거나 타겟 빌드 설정의 '일반'탭을 통해 추가해야합니다. 좀 더 자세한 내용과 스크린 샷을 명확하게 설명하기 위해 답변에 추가하겠습니다. –