이전 Xcode 프로젝트에 Swift 클래스를 추가 한 후이 오류가 발생합니다.
dyld: Library not loaded: @rpath/libswift_stdlib_core.dylib
프로젝트를 다시 실행하려면 어떻게해야합니까?
답변
나에게 이전 솔루션 중 어느 것도 효과가 없었습니다. ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES
빌드 설정에 YES로 설정해야하는 플래그 (이전 버전 : “내장 된 컨텐츠에 스위프트 코드가 포함됨”) 가 있음을 발견했습니다 . 기본적으로 NO였습니다!
답변
이 오류는 Objective-C 프로젝트를 변환하여 Swift 사용을 시작하는 중에 문제가 발생한 경우 발생할 수 있습니다. 문제는 링커 빌드 설정이 제대로 구성되지 않았으므로 직접 수행해야한다는 것입니다. Runpath Search Paths 빌드 설정을 찾아서 다음과 같이 설정하십시오.
$(inherited) @executable_path/Frameworks
편집 : 또한 다른 문제로 인해이 오류가 최근에 발생했다고 덧붙여 야합니다 .Apple은 아마도 Xcode 6.1 또는 6.1.1에서 시작하여 Swift 자체를 변경했습니다. 유일한 해결책은 Xcode를 종료하고 Keychain Access에서 인증서를 삭제하고 회원 센터로 이동하여 모든 인증서 및 프로필을 삭제 한 다음 (Store의 앱 프로필 제외-삭제할 수 없음) 처음부터 전체 인증서 요청 프로세스
답변
나는 왜이 질문이 다운 투표되고 있는지 잘 모르겠습니다. 기존 프로젝트에서 Swift를 처음 사용할 때도이 문제가있었습니다. Xcode를 다시 시작하면이 문제가 해결되었습니다.
답변
이 문제에 대해 오랫동안 검색했습니다. 이 문제의 원인은 여러 가지가 있습니다.
Objectice C 프로젝트에서 Swift 코드 / 라이브러리를 사용할 때 직면하는 경우 솔루션 1-2-3을 시도해야합니다
새로운 Swift 프로젝트 솔루션 4로이 문제에 직면 한 경우 가장 적합합니다.
해결책 1 :
Xcode를 재시작 한 다음 컴퓨터와 iPhone
해결책 2 :
프로젝트 빌드 설정으로 이동하여 Always Embed Swift Standard Libraries
(이전 Embedded Content Contains Swift Code
) 플래그를YES
해결책 3 :
프로젝트 빌드 설정으로 이동하여 추가 @executable_path/Frameworks
로 Runpath Search Paths
옵션
해결책 4 :
위의 방법 중 어느 것도 작동하지 않으면 이것이되어야합니다. 애플은 닌자 패치 인증서 인 것처럼 보입니다.AirSign의 게시물에
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
인증서와 프로 비전을 다시 만들어야합니다
답변
필자의 경우 사용자 정의 프레임 워크를 가져 오려고 시도했지만 비슷한 오류가 발생했습니다. 연결된 프레임 워크 및 라이브러리가 아닌 Embedded Binaries에서 프레임 워크를 가져와야합니다.
임베디드 바이너리는 프로젝트 설정->-> 일반에 있습니다.
답변
Adhoc / Enterprise 배포 빌드에서이 문제가 발생한 개발자의 경우,
개발자 포털에서 프로덕션 인증서를 작성한 후 분배 프로파일을 재생성하십시오. 둘 다 Mac에서 다운로드하여 설치하십시오. Xcode 빌드 설정에서 올바른 프로파일을 선택했는지 확인하고 앱을 다시 빌드하십시오.
답변
해결책 5 :
제 경우에는 accfews 의 답변에 언급 된 모든 솔루션 이 매우 도움이되었지만 아무것도 효과가 없었습니다. 프로젝트 대상의 “일반”섹션에있는 “내장 바이너리”섹션에 빠른 라이브러리를 추가하여 문제를 해결했습니다. 아마도 내 작업 공간에 신속한 프레임 워크를 포함했기 때문일 수 있습니다. 그것이 무엇이든 지금 컴파일! 스위프트 준비해, 내가 왔어!