Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Xcode 6: Build hangs and Interface Builder Cocoa Touch Tool starts allocating all RAM

I’m having an issue to which I haven’t been able to find a solution just by searching here or on Google.

I’m building a project which is shared by multiple developers. For some reason I’m the only one with this issue. I checked out the code several times and even re-installed Xcode.

So what happens is that when I build the project the build process hangs forever. A process called “Interface Builder Cocoa Touch Tool” runs and starts accumulating RAM until it reached the Mac’s limit (which is 16 GB). At this point, as soon as I see that I kill the process and the build fails.

On the Console App I see this:

2014-10-02 4:45:16.013 PM Interface Builder Cocoa Touch Tool[875]: BUG in libdispatch client: kevent[EVFILT_VNODE] add: "Bad file descriptor" - 0x9
2014-10-02 4:45:17.956 PM Interface Builder Cocoa Touch Tool[875]: assertion failed: 13F34: libxpc.dylib + 29453 [75E30F22-514B-3A20-B82C-EDA43AF5C35C]: 0x8d

On Xcode I see the build getting stuck on “Compiling 1 of 1 story board files”, or “Compiling 1 of 1 asset catalogs”.

Even if I stop the build, the “Interface Builder Cocoa Touch Tool” process will continue running and accumulating RAM.

I do see two warnings related to the story board:

Base.lproj/MainStoryboard.storyboard Frame for "Scroll View" will be different at run time.
Base.lproj/MainStoryboard.storyboard: warning: Unsupported Configuration: Prototype table cells must have reuse identifiers

And I see two warnings for the assets:

../Images-2.xcassets: A 57x57 app icon is required for iPhone apps targeting releases of iOS prior to 7.0
../Images-2.xcassets: A 57x57@2x app icon is required for iPhone apps targeting releases of iOS prior to 7.0

But I don’t think these are the cause.

Here are Xcode’s and the Mac’s information:

2.5 Ghz, Core i7 with 16 GB of Ram. Os X 10.9.5. Xcode 6.0.1.

Any help is more than welcomed.

Thanks.

like image 872
HotFudgeSunday Avatar asked Oct 02 '14 20:10

HotFudgeSunday


3 Answers

I had the exact same problem: opening the storyboard in xcode results in beach ball with the Interface Builder task consuming all the memory. I got it back working by editing the xml of the storyboard file and setting

useAutolayout="NO"

in the document node. Of cause this is not a solution to the problem (which seems to be a bug in xcode) because it screws all constraints, but at least I could open and compile the storyboard again.

like image 156
momo Avatar answered Oct 02 '22 07:10

momo


Apparently, there's a corrupted .xib file. I reverted the file that was getting stuck compiling. I'm researching what's the line that's making it crash.

EDIT

I reproduced the problem in the console: There is a serious bug ongoing here.

Felipes-MacBook-Pro:FitMob-ios fbaytelm$     /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/ibtool --target-device iphone --errors --warnings --notices --module fitmobAppStore --minimum-deployment-target 7.0 --output-partial-info-plist /Users/fbaytelm/Library/Developer/Xcode/DerivedData/fitmob-fpoxwngwxzwfqrebczuslduvfozr/Build/Intermediates/fitmob.build/Debug-iphonesimulator/fitmobAppStore.build/FMSplashViewController-PartialInfo.plist --auto-activate-custom-fonts --output-format human-readable-text --compile /Users/fbaytelm/Library/Developer/Xcode/DerivedData/fitmob-fpoxwngwxzwfqrebczuslduvfozr/Build/Products/Debug-iphonesimulator/fitmobAppStore.app/FMSplashViewController.nib /Users/fbaytelm/Documents/workspace/FitMob-ios/FitMob/Classes/Views/Common/FMSplashViewController.xib
2014-10-10 01:38:48.386 ibtoold[23113:213948] [MT] DVTAssertions: ASSERTION FAILURE in /SourceCache/IDEInterfaceBuilder/IDEInterfaceBuilder-6249/InterfaceBuilderKit/Utilities/IBAbstractMessageChannelInterfaceBuilderToolProxy.m:40
Details:  Failed to determine the value for availableFonts of UIFont.

Encountered an error communicating with Interface Builder Cocoa Touch Tool. If you choose to file a crash report or Radar for this issue, please check Console.app for crash reports for "Interface Builder Cocoa Touch Tool" and include their content in your crash report.

Exception name: IBRemoteToolFailureException
Exception reason: Interface Builder Cocoa Touch Tool crashed

Last command:
valueForKeyPath:ofClassWithName:resultMarshaller:resultMarshallerContext:

Backtrace of last command:
  0  0x000000010d5dc3e1 (in IDEInterfaceBuilderCocoaTouchIntegration)
  1  0x000000010d5a4cd1 IBAskClassInTargetRuntimeForValueForKeyPathUsingResultMarshallerWithContext (in IDEInterfaceBuilderCocoaTouchIntegration)
  2  0x000000010d5a4b38 IBAskClassInTargetRuntimeForValueForKeyPathUsingResultMarshaller (in IDEInterfaceBuilderCocoaTouchIntegration)
  3  0x000000010d5d7bae (in IDEInterfaceBuilderCocoaTouchIntegration)
  4  0x000000010d5d7a35 (in IDEInterfaceBuilderCocoaTouchIntegration)
  5  0x000000010d5d8873 (in IDEInterfaceBuilderCocoaTouchIntegration)
  6  0x000000010d64cb26 (in IDEInterfaceBuilderCocoaTouchIntegration)
  7  0x000000010d67b46b IBUIValidateFontDescription (in IDEInterfaceBuilderCocoaTouchIntegration)
  8  0x000000010d6e9fe7 (in IDEInterfaceBuilderCocoaTouchIntegration)
  9  0x000000010762177f -[IBDocumentIssueGenerator updateIssuesForMembers:] (in IDEInterfaceBuilderKit)
 10  0x0000000107622790 -[IBDocumentIssueGenerator validateIssues:] (in IDEInterfaceBuilderKit)
 11  0x000000010667f37e -[DVTDelayedInvocation runBlock:] (in DVTFoundation)
 12  0x000000010667f903 -[DVTDelayedInvocation invokeIfNeeded] (in DVTFoundation)
 13  0x000000010762289b -[IBDocumentIssueGenerator warnings] (in IDEInterfaceBuilderKit)
 14  0x00000001065aebbb (in ibtoold)
 15  0x00000001065a130f (in ibtoold)
 16  0x00000001065a4b21 (in ibtoold)
 17  0x00000001065aa3f7 (in ibtoold)
 18  0x00000001065aa947 (in ibtoold)
 19  0x00000001065aa817 (in ibtoold)
 20  0x0000000106599d4f (in ibtoold)
 21  0x00000001065a9fe1 (in ibtoold)
 22  0x00000001065a9238 (in ibtoold)
 23  0x00007fff90ff15c9 start (in libdyld.dylib)

Exception backtrace:
(null)
Exception info:{
    IBUnderlyingError = "Error Domain=IBMessageChannelErrorDomain Code=4 \"Failed to communicate with Interface Builder\" UserInfo=0x7fe7fbf43020 {NSLocalizedDescription=Failed to communicate with Interface Builder, NSLocalizedFailureReason=Interface Builder Cocoa Touch Tool crashed}";
}

Function: void IBAssertMarshallingFailure(NSString *__strong, NSString *__strong, NSString *__strong)
Thread:   <NSThread: 0x7fe7f941adf0>{number = 1, name = main}
Hints: None
Backtrace:
  0  0x00000001067982e4 -[DVTAssertionHandler handleFailureInFunction:fileName:lineNumber:assertionSignature:messageFormat:arguments:] (in DVTFoundation)
  1  0x0000000106797a7b _DVTAssertionHandler (in DVTFoundation)
  2  0x0000000106797cde _DVTAssertionFailureHandler (in DVTFoundation)
  3  0x0000000107676973 IBAssertMarshallingFailure (in IDEInterfaceBuilderKit)
  4  0x000000010d5a4e1c IBAskClassInTargetRuntimeForValueForKeyPathUsingResultMarshallerWithContext (in IDEInterfaceBuilderCocoaTouchIntegration)
  5  0x000000010d5a4b38 IBAskClassInTargetRuntimeForValueForKeyPathUsingResultMarshaller (in IDEInterfaceBuilderCocoaTouchIntegration)
  6  0x000000010d5d7bae (in IDEInterfaceBuilderCocoaTouchIntegration)
  7  0x000000010d5d7a35 (in IDEInterfaceBuilderCocoaTouchIntegration)
  8  0x000000010d5d8873 (in IDEInterfaceBuilderCocoaTouchIntegration)
  9  0x000000010d64cb26 (in IDEInterfaceBuilderCocoaTouchIntegration)
 10  0x000000010d67b46b IBUIValidateFontDescription (in IDEInterfaceBuilderCocoaTouchIntegration)
 11  0x000000010d6e9fe7 (in IDEInterfaceBuilderCocoaTouchIntegration)
 12  0x000000010762177f -[IBDocumentIssueGenerator updateIssuesForMembers:] (in IDEInterfaceBuilderKit)
 13  0x0000000107622790 -[IBDocumentIssueGenerator validateIssues:] (in IDEInterfaceBuilderKit)
 14  0x000000010667f37e -[DVTDelayedInvocation runBlock:] (in DVTFoundation)
 15  0x000000010667f903 -[DVTDelayedInvocation invokeIfNeeded] (in DVTFoundation)
 16  0x000000010762289b -[IBDocumentIssueGenerator warnings] (in IDEInterfaceBuilderKit)
 17  0x00000001065aebbb (in ibtoold)
 18  0x00000001065a130f (in ibtoold)
 19  0x00000001065a4b21 (in ibtoold)
 20  0x00000001065aa3f7 (in ibtoold)
 21  0x00000001065aa947 (in ibtoold)
 22  0x00000001065aa817 (in ibtoold)
 23  0x0000000106599d4f (in ibtoold)
 24  0x00000001065a9fe1 (in ibtoold)
 25  0x00000001065a9238 (in ibtoold)
 26  0x00007fff90ff15c9 start (in libdyld.dylib)
like image 34
Felipe Baytelman Avatar answered Oct 02 '22 06:10

Felipe Baytelman


I had two Xcode versions installed, 5 & 6. Not sure if this was the cause, but Apple indicated this does happen with people and that the appropriate action is to ensure that the correct version is 'selected'

xcode-select -p

Not sure this would have fixed the issue or not, but after removing both versions and then installing Xcode 6, things appear to have been resolved.

like image 43
MobileVet Avatar answered Oct 02 '22 06:10

MobileVet