Programing

xcode6 beta 6 osx swift 프로젝트에서 개체 ( 'po')를 인쇄 할 수 없음 : (자동 가져 오기 오류 : AST 컨텍스트에서 모듈 '__ObjC'를 가져 오지 못했습니다)

lottogame 2020. 9. 12. 11:21
반응형

xcode6 beta 6 osx swift 프로젝트에서 개체 ( 'po')를 인쇄 할 수 없음 : (자동 가져 오기 오류 : AST 컨텍스트에서 모듈 '__ObjC'를 가져 오지 못했습니다)


poxcode 6 beta 6 OSX Swift 프로젝트에서 개체 ( 명령) 를 인쇄하려고하면 다음 오류 메시지가 표시됩니다.

(lldb) po managedObject
error: Error in auto-import:
failed to get module '__ObjC' from AST context

이 경우 문제의 개체는의 인스턴스입니다 NSManagedObject.

__ObjC moduleLLVM 추상 구문 트리 컨텍스트에 들어갈 때 자동 가져 오기를 돕는 방법에 대한 조언이 있습니까?


Xcode 6.1부터 po 명령을 두 번 시도하면 두 번째 시도에서 작동합니다. 첫 번째 po 명령은 새로운 디버깅 세션마다 항상 실패하지만 후속 호출은 작동합니다.


xcode 7.3.1에서 동일한 문제가 있습니다.

error: Error in auto-import:
failed to get module 'Touch' from AST context:
<module-includes>:1:9: note: in file included from <module-includes>:1:
#import "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/include/libxml2/libxml/tree.h"
        ^
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/include/libxml2/libxml/tree.h:17:10: error: 'libxml/xmlversion.h' file not found
#include <libxml/xmlversion.h>
         ^
could not build Objective-C module 'LibXML2'

그러나 fr v managedObject대신 사용할 수 있습니다 po managedObject.


나는 당신이 가지고 있는지 다시 확인하는 것이 좋습니다

-D 디버그

디버그에 사용하는 체계에 대한 '기타 Swift 플래그'에 설정된 플래그. 실수로 삭제했을 때 비슷한 문제가 발생했습니다.


내 프로젝트를 정리하고 삭제하면 DerivedData효과적이었습니다.


WWDC2017에서 Apple 엔지니어와 유사한 오류 메시지에 대해 논의했습니다. 이 문제에는 여러 가지 원인이있을 수있는 것으로 보이며 위에서 설명한 것과 약간 다른 문제라는 것을 알고 있습니다.

우리 팀은이 문제를 알아 내기 위해 몇 주를 보냈고 결국 우리가 알아낼 수 없었던 Apple 컴파일러의 버그가되었습니다. 또한 매우 쉬운 해결 방법이 있습니다.

따라서 이것은 다른 사람이이 혼란스러운 오류 메시지를 검색하고이 답변을 찾을 가능성을 최대화하기 위해 여기에 수정 사항을 게시하는 것입니다.

그래서 여기 있습니다. 우리의 경우에는 Swift와 Objective-C 프레임 워크를 혼합하여 사용하는 Objective-C 프로젝트가있었습니다. 이 수정 사항은 약간 다른 상황에 적용될 수 있습니다. 시도해보십시오.

컴파일 링 플래그가 프레임 워크와 프로젝트에서 집계되는 방식에 버그가 발생하고 "순수 Objective-C"프로젝트가이를 "활성화"합니다.

해결책 : Objective-C 프로젝트에 하나의 빈 Swift 파일 ( "Whatever.swift"등)을 추가하여 더 이상 pure-objective-c가 아닙니다 (new-> file-> Swift 파일, 브리징 헤더를 만듭니다. 파일에는 Foundation 가져 오기만 포함됩니다.

참고 URL : https://stackoverflow.com/questions/25520415/unable-to-print-object-po-in-xcode6-beta-6-osx-swift-project-error-in-auto

반응형