3

In order to support iOS in range from iOS 7 to iOS 9, I installed both of Xcode 6 and 7. Then I created a project for iPhone on Xcode 7. And I opened it on Xcode 6 to test on iPhone Simulator 7.

But Xcode 6 crashed when I clicked Storyboard file.

How can I resolve it? Or there is another way to support the iOS versions?


Error Message

Process:               Xcode [9928]
Path:                  /Applications/Xcode 6.app/Contents/MacOS/Xcode
Identifier:            com.apple.dt.Xcode
Version:               6.4 (7720)
Build Info:            IDEFrameworks-7720000000000000~8
Code Type:             X86-64 (Native)
Parent Process:        ??? [1]
Responsible:           Xcode [9928]
User ID:               501

Date/Time:             2016-01-04 01:15:21.068 +0900
OS Version:            Mac OS X 10.10.5 (14F1509)
Report Version:        11
Anonymous UUID:        F02C76F0-B69A-FE68-DD89-9946A7C82C03

Sleep/Wake UUID:       2BF55735-0241-43B3-A731-49B6D645DC4F

Time Awake Since Boot: 53000 seconds
Time Since Wake:       550 seconds

Crashed Thread:        0  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_CRASH (SIGABRT)
Exception Codes:       0x0000000000000000, 0x0000000000000000

Application Specific Information:
ProductBuildVersion: 6E35b
ASSERTION FAILURE in /SourceCache/IDEInterfaceBuilderCocoaTouch/IDEInterfaceBuilderCocoaTouch-7703/InterfaceBuilder/Utilities/IBObjectMarshalling.m:45
Details:  Failed to launch Interface Builder Cocoa Touch Tool: Error Domain=com.apple.InterfaceBuilder Code=-1 "Encountered an error communicating with Interface Builder WatchKit Tool." UserInfo=0x7fb9b3128d40 {NSUnderlyingError=0x7fb9ac00c620 "Failed to communicate with Interface Builder", NSLocalizedDescription=Encountered an error communicating with Interface Builder WatchKit Tool., NSLocalizedRecoverySuggestion=Please check Console.app for crash reports for "Interface Builder WatchKit Tool" for further information., NSLocalizedFailureReason=Interface Builder WatchKit Tool (10069) failed to launch and exited with status (null), signal 5.



Dyld Error Message:
  Library not loaded: /System/Library/PrivateFrameworks/PepperUICore.framework/PepperUICore
  Referenced from: /Applications/Xcode 6.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Library/Xcode/Overlays/Interface Builder WatchKit Tool
  Reason: image not found


Application Specific Information:
dyld: launch, loading dependent libraries
DYLD_FRAMEWORK_PATH=/Applications/Xcode 6.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Library/Xcode/Overlays
DYLD_LIBRARY_PATH=
DYLD_FALLBACK_LIBRARY_PATH=
DYLD_ROOT_PATH=/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 9.0.simruntime/Contents/Resources/RuntimeRoot
}
rmaddy
  • 314,917
  • 42
  • 532
  • 579
Daeyeon Joo
  • 155
  • 9
  • I have my doubts that a project made in XC 7 will work in XC 6 – votelessbubble Jan 03 '16 at 16:47
  • 1
    You do realize that your app can support iOS 7 and higher while using just Xcode 7, right? – rmaddy Jan 03 '16 at 17:40
  • @rmaddy I know it. But in Xcode 7, I can't test my app on iPhone Simulator for iOS 7. How can you test your app for iOS 7 on Xcode 7?? – Daeyeon Joo Jan 03 '16 at 18:05
  • With a real device running iOS 7. Or drop support for iOS 7 if you can't test it. – rmaddy Jan 03 '16 at 18:59
  • BTW - testing your app under iOS 7 with Xcode 6 is not a valid test. The app you would be testing will not be the same app you submit to the store. It may work perfectly on iOS 7 when tested with Xcode 6 but fail and crash when built with Xcode 7. – rmaddy Jan 03 '16 at 19:21
  • @rmaddy You are right. Any app should be submitted though Xcode 7. Thanks :) – Daeyeon Joo Jan 04 '16 at 04:49

3 Answers3

6

The reason is a conflict between Xcode 6 and 7. Apple reveals it in a release note for Xcode 7.

I followed the steps and the error is resolved.

"Installing the iOS 9.0 Simulator Runtime from Xcode's Download Preferences can cause Interface Builder in Xcode 6 installs on the same machine to stop functioning. Either avoid installing the iOS 9.0 Simulator Runtime or move /Library/Developer/CoreSimulator/Profiles/Runtimes/iOS\ 9.0.simruntime to a backup location when switching to Xcode 6 and move it back for Xcode 7. (23230951)"

https://developer.apple.com/library/watchos/releasenotes/DeveloperTools/RN-Xcode/Chapters/xc7_release_notes.html

Daeyeon Joo
  • 155
  • 9
  • Yep. Removing iOS 9 simulator solved this problem for me. One interesting observation. My error message different, XCode 6 was looking for watch kit and couldn't find it. – SilentNot Jan 25 '16 at 21:34
  • @SilentNot I also had your error message for watch kit too. But It was also resolved. Maybe Xcode tried to load framework list in the project file, but the list depends on the xcode version. – Daeyeon Joo Jan 26 '16 at 14:37
1

Got the same issue, after some investigation, it seems after a Xcode update or Mac OS update, there are 2 private frameworks removed from system library, PepperUICore.framework and SockPuppetGizmo.framework. But you can still find them in your Xcode 6 simulator SDK.

Make sure these 2 frameworks are not found in /System/Library/PrivateFramework/. Then use below command lines (Replace the Xcode 6 app path with yours) to copy the private framework from Xcode 6 simulator SDK to your /System/Library/PrivateFramework/.

sudo cp -r /Applications/Xcode6.4.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/PrivateFrameworks/PepperUICore.framework /System/Library/PrivateFrameworks/

sudo cp -r /Applications/Xcode6.4.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/PrivateFrameworks/SockPuppetGizmo.framework /System/Library/PrivateFrameworks/

Now open your .xib or .storyboard with Xcode 6, it should be fine.

evanchin
  • 2,028
  • 1
  • 22
  • 25
  • I resolved this issue from https://developer.apple.com/library/watchos/releasenotes/DeveloperTools/RN-Xcode/Chapters/xc7_release_notes.html. I thnks your experience is different problem :) – Daeyeon Joo Jan 07 '16 at 14:42
0

Try changing the "Opens In" attribute in the storyboard inspector to have it compatible with Xcode 6 or 6.3.

Specifically this dropdown / popup menu item:

enter image description here

But like Kaizoku comments, don't be surprised if something else is broken (e.g. if your app is expecting symbols or functionality that only exists in iOS 9).

What may be better is to set the minimum deployment version for your app (e.g. to iOS 7) and try it out in an iOS 7 or iOS 8 simulator which you can download with Xcode 7.

Community
  • 1
  • 1
Michael Dautermann
  • 88,797
  • 17
  • 166
  • 215