8

在我启动 xCode ( ) 后不久,我每次都会有这个5.1.1

删除了用户数据,关闭了源代码管理(正如一些帖子所建议的那样),没有效果,仍然崩溃(同时显示索引......永远不会完成)。即使重新安装了xCode,没有任何效果,仍然如此。

有人修过这样的xCode吗?

在此处输入图像描述

这是崩溃的线程:

 Thread 7 Crashed:: Dispatch queue: IDEIndex PCH Creation Lock
    0   libclang.dylib                  0x00000001080c60d9 void llvm::BitstreamWriter::EmitRecordWithAbbrevImpl<unsigned long long>(unsigned int, llvm::SmallVectorImpl<unsigned long long>&, llvm::StringRef) + 809
    1   libclang.dylib                  0x00000001080c5867 void llvm::BitstreamWriter::EmitRecord<unsigned long long>(unsigned int, llvm::SmallVectorImpl<unsigned long long>&, unsigned int) + 71
    2   libclang.dylib                  0x00000001081e9f25 clang::ASTWriter::WriteASTCore(clang::Sema&, llvm::StringRef, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, clang::Module*) + 35045
    3   libclang.dylib                  0x00000001081e160e clang::ASTWriter::WriteAST(clang::Sema&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, clang::Module*, llvm::StringRef, bool) + 6830
    4   libclang.dylib                  0x00000001080719a3 clang::ASTUnit::Save(llvm::StringRef) + 691
    5   libclang.dylib                  0x0000000107fe974f clang_saveTranslationUnit + 543
    6   com.apple.dt.IDEFoundation      0x0000000106ac63af -[IDEIndexClangTranslationUnit cxTranslationUnit] + 331
    7   com.apple.dt.IDEFoundation      0x0000000106c2c11a +[IDEIndexClangDataSource translationUnitForPCHFile:arguments:session:create:] + 259
    8   com.apple.dt.IDEFoundation      0x0000000106cf5552 __90-[IDEIndex createPCHFile:arguments:hashCriteria:target:session:willIndex:translationUnit:]_block_invoke + 1739
    9   libdispatch.dylib               0x00007fff957012ad _dispatch_client_callout + 8
    10  libdispatch.dylib               0x00007fff95702166 _dispatch_barrier_sync_f_invoke + 39
    11  com.apple.dt.DVTFoundation      0x0000000105fce5cf -[DVTDispatchLock performLockedBlock:] + 95
    12  com.apple.dt.IDEFoundation      0x0000000106cf4932 -[IDEIndex createPCHFile:arguments:hashCriteria:target:session:willIndex:translationUnit:] + 919
    13  com.apple.dt.IDEFoundation      0x0000000106ac4985 -[IDEIndexClangDataSource generateDataForJob:] + 1274
    14  com.apple.dt.IDEFoundation      0x0000000106ac42fb -[IDEIndexDataSource processJob:] + 147
    15  com.apple.dt.IDEFoundation      0x0000000106ac3e33 +[IDEIndexingEngine runFileJob:] + 732
    16  com.apple.dt.IDEFoundation      0x0000000106ac3550 -[IDEIndexingJob run] + 161
    17  com.apple.dt.IDEFoundation      0x0000000106c3233c __40-[IDEIndexingJobScheduler _scheduleJobs]_block_invoke + 33
    18  libdispatch.dylib               0x00007fff957041d7 _dispatch_call_block_and_release + 12
    19  libdispatch.dylib               0x00007fff957012ad _dispatch_client_callout + 8
    20  libdispatch.dylib               0x00007fff9570309e _dispatch_root_queue_drain + 326
    21  libdispatch.dylib               0x00007fff95704193 _dispatch_worker_thread2 + 40
    22  libsystem_pthread.dylib         0x00007fff8ead7ef8 _pthread_wqthread + 314
    23  libsystem_pthread.dylib         0x00007fff8eadafb9 start_wqthread + 13

或者您可以在https://gist.github.com/eppz/10669132找到完整的崩溃报告

4

4 回答 4

9

声明中有一个.m文件#import

它是由一行代码引起的!不敢相信。花了 4 个小时搞清楚。哦,它是由一个@class声明组合而成的。

它显示为错误,但 xCode / Clang 崩溃的速度比您构建的速度还要快。:D

致命模式:

一小时

#import "Two.m" // Not easy to spot actually.

@interface One : NSObject
@end

二.h

@class One;
@interface Two : NSObject
@property (nonatomic, weak) One *one;
@end

除非我提到的项目有 200 多个课程,否则我无法重现它。那一定是某种竞争条件。

于 2014-04-15T10:34:57.950 回答
4

如果您在任何 Objective-C 头文件中有一个 @Implementation ,它似乎也足以导致它失败。

于 2014-09-04T14:58:14.543 回答
2

就我而言,我在伞头文件本身内部导入了伞头文件。

例如:

在 MyFramework.h 中,我有:

#import <MyFramework/MyFramework.h>

索引器讨厌这个!

于 2015-09-04T18:45:53.863 回答
1

从日志中:IDEIndex PCH Creation Lock> 看起来 Xcode 在崩溃时尝试索引项目。

因此,请尝试在您的项目或源代码中找出可能导致此问题的原因,也许将您的最新工作版本与当前版本进行比较。

于 2014-04-15T10:31:47.453 回答