Interface Builder Sync Problem (Xcode/IB 3.2 & Snow Leopard 10.6.2)

Discussion in 'iOS Programming' started by Darkroom, Feb 14, 2010.

  1. Darkroom Guest

    Darkroom

    Joined:
    Dec 15, 2006
    Location:
    Montréal, Canada
    #1
    I'm running Snow Leopard (10.6.2) and I'm using version 3.2 of both Xcode and Interface Builder.

    I'm noticing that Interface Builder is not being kept in sync with my Xcode project when I add or alter outlets and actions and then do a Save. I always have to explicitly save any UI changes inside IB and/or invoke Reload All Class Files from the Interface Builder's File menu before new or altered outlets and actions show up properly when I control-click on my App Delegate icon.

    I notice that the Library/Application Support directory for Interface Builder is called Interface Builder 3.0, even though I'm definitely using version 3.2 of that software.

    In the General Section of Interface Builder's Properties pane, I have the following items checked:

    -When documents activate: Synchronize with Xcode
    -When documents open: Restore active objects
    -When documents save: Preserve bundle contents

    I have tried to fix this a number of ways. First of all, I exited Interface Builder and Xcode, deleted the following files and directories, and then restarted Xcode:

    -Library/Preferences/com.apple.Xcode.plist
    -Library/Preferences/com.apple.InterfaceBuilder3.plist
    -Library/Preferences/com.apple.InterfaceBuilder3.LSSharedFileList.plist
    -Library/Caches/com.apple.Xcode
    -Library/Caches/com.apple.InterfaceBuilder3
    -Library/Application Support/Developer/Shared/Xcode
    -Library/Application Support/Interface Builder 3.0

    However, after doing all this, Interface Builder still refuses to auto-synch with Xcode.

    Has anyone else seen this problem where the 3.2 version of Interface Builder doesn't auto-synch with version 3.2 of Xcode under Snow Leopard? This used to work fine for me under the earlier versions of Interface Builder and Xcode under Leopard.

    Can anyone tell me what I might be doing wrong, or how to fix this auto-synch problem?
     
  2. chown33 macrumors 604

    Joined:
    Aug 9, 2009
    #2
  3. Darkroom thread starter Guest

    Darkroom

    Joined:
    Dec 15, 2006
    Location:
    Montréal, Canada
    #3
    i've posted here because i haven't found anything that worked from searching.

    what didn't work:

    1. i've deleted developer tools completely (sudo /Developer/Library/uninstall-devtools --mode=all) as well as associated pref/support files, and reinstalled.

    2. i've performed a clean install of Mac OS X 10.6.0, updated to 10.6.2, and reinstalled developer tools.

    3. assuming the problem was arising from my saved project file (which i open from finder to launch xcode), i created a new xcode project after the reinstall, which also wasn't in sync with IB.
     
  4. Darkroom thread starter Guest

    Darkroom

    Joined:
    Dec 15, 2006
    Location:
    Montréal, Canada
    #4
    still unsolved. although as a possible clue i've noticed in my system console that the launch of interface builder outputs the following:

    Code:
    10-02-15 5:33:04 PM  Interface Builder[2954]  Error loading /Library/ScriptingAdditions/Adobe Unit Types.osax/Contents/MacOS/Adobe Unit Types:  dlopen(/Library/ScriptingAdditions/Adobe Unit Types.osax/Contents/MacOS/Adobe Unit Types, 262): no suitable image found.  Did find:	/Library/ScriptingAdditions/Adobe Unit Types.osax/Contents/MacOS/Adobe Unit Types: no matching architecture in universal wrapper
    
    10-02-15 5:33:04 PM  [0x0-0x159159].com.apple.InterfaceBuilder3[2954] Interface Builder: OpenScripting.framework - scripting addition "/Library/ScriptingAdditions/Adobe Unit Types.osax" declares no loadable handlers.
    
    i'm not sure why IB is trying to access this adobe file. thoughts?

    [EDIT] i just found this info on adobe's site concerning a newer 10.6 (64-bit) version of this file and have installed it. reinstalling Xcode IDE to see if this was the cause.

    [EDIT 2] that seems to have addressed that issue, whatever it was. but now there is a new console log output when IB is launched

    Code:
    10-02-15 6:44:32 PM	[0x0-0x1d01d].com.apple.InterfaceBuilder3[293]	Couldn't open shared capabilities memory GSCapabilities (No such file or directory)
    
    [EDIT 3] last one: this is some crazy junk the console is vomiting when iPhone Simulator is launched

    Code:
    10-02-15 7:56:40 PM	com.apple.launchd.peruser.501[88]	(com.apple.iPhoneSimulator:com.apple.AOSNotification) Conflict with job: com.apple.AOSNotification over Mach service: com.apple.AOSNotification
    10-02-15 7:56:40 PM	com.apple.launchd.peruser.501[88]	(com.apple.iPhoneSimulator:com.apple.dataaccess.dataaccessd) Bug: launchd_core_logic.c:4562 (23932):2
    10-02-15 7:56:40 PM	com.apple.launchd.peruser.501[88]	(com.apple.iPhoneSimulator:com.apple.dataaccess.dataaccessd) Path monitoring failed on "/var/mobile/Library/Preferences/com.apple.dataaccess.launchd": No such file or directory
    10-02-15 7:56:40 PM	com.apple.launchd.peruser.501[88]	(com.apple.iPhoneSimulator:com.apple.apsd) Bug: launchd_core_logic.c:4562 (23932):2
    10-02-15 7:56:40 PM	com.apple.launchd.peruser.501[88]	(com.apple.iPhoneSimulator:com.apple.apsd) Path monitoring failed on "/var/mobile/Library/Preferences/com.apple.apsd.launchd": No such file or directory
    10-02-15 7:56:40 PM	com.apple.launchd.peruser.501[88]	(com.apple.iPhoneSimulator:com.apple.AOSNotification) Bug: launchd_core_logic.c:4562 (23932):2
    10-02-15 7:56:40 PM	com.apple.launchd.peruser.501[88]	(com.apple.iPhoneSimulator:com.apple.AOSNotification) Path monitoring failed on "/var/mobile/Library/Preferences/com.apple.AOSNotification.launchd": No such file or directory
    10-02-15 7:56:40 PM	vot[389]	******** AX INSPECTOR MODE ************
    10-02-15 7:56:40 PM	vot[389]	VoiceOverTouch exiting because accessibility is not enabled. To enable do this: 'defaults write com.apple.Accessibility AccessibilityEnabled true'
    10-02-15 7:56:44 PM	SpringBoard[393]	Unable to create CFServerConnection. Telephony state may be incorrect.
    10-02-15 7:56:44 PM	SpringBoard[393]	Not migrating manifest
    10-02-15 7:56:44 PM	SpringBoard[393]	...completed profile migration.
    10-02-15 7:56:44 PM	SpringBoard[393]	Unable to create CFServerConnection. Telephony state may be incorrect.
    10-02-15 7:56:44 PM	SpringBoard[393]	Unable to create CFServerConnection. Telephony state may be incorrect.
    10-02-15 7:56:44 PM	SpringBoard[393]	Unable to create CFServerConnection. Telephony state may be incorrect.
    10-02-15 7:56:44 PM	SpringBoard[393]	Can't find the translation dictionary, loadTranslationDictionaries
    10-02-15 7:56:44 PM	SpringBoard[393]	Unable to create CFServerConnection. Telephony state may be incorrect.
    
    it may or may not be related
     
  5. Darkroom thread starter Guest

    Darkroom

    Joined:
    Dec 15, 2006
    Location:
    Montréal, Canada
    #5
    ok. it's in sync now... well, at least i assume it is. what i mean by that is i don't have to explicitly reload class files from IB, but i do have to explicitly save any UI changes made in IB. i'm assuming IB no longer saving with builds is a new "feature" to snow leopard? or is there an option somewhere that i'm completely forgetting about?

    are you running Xcode 3.2.1 on Snow Leopard 10.6.2, and if so:

    1. are your IB changes saved upon building (assuming you've selected it to do so in preferences)?
    2. do you have have strange errors from your system console?
    3. do you have an "Interface Builder 3.0" folder in you Application Support folder?
     
  6. muzim macrumors newbie

    Joined:
    Nov 19, 2004
    #6
    I had the same problem and found a solution that worked for me by looking in forums.
    Instead of opening your project from Xcode, open it by double clicking it in the finder. When you open Interface Builder you should see that the status bar light is now green
    I am not sure why this is working, but it is for me
     
  7. sheareb macrumors regular

    Joined:
    Dec 27, 2009
    #7
    I have similar issue except that in IB the little light is green but when I run in XCODE its not reflecting the changes. Tried searching the web to no real avail and tried launching from Finder.

    Its driving me nuts and poor show Apple, this should work.
    Only just started on iPhone development from a PC based development and this lack of co-ordination is simply ridiculous! This is the second app sample I have been coding that has lost synchronisation.
     
  8. dblapps macrumors newbie

    Joined:
    May 31, 2010
    #8
    Another solution to this issue

    Hi All,

    Thought I'd share my 2 cents worth on this issue. I've been having the same problem for the past couple hours in a project I'm working on. What I just discovered is the IB seems to have trouble dealing with class header files where the @interface line is broken up in multiple lines with #ifdef's. I had something like this at the top of my class header file:

    @interface MyClassName : UIViewController
    #ifdef LITE_VERSION
    <ProtoOne,ProtoTwo>
    #else
    <ProtoOne>
    #endif
    {
    ... rest of class definition

    And I was unable to get IB to recognize the IBOutlets defined later in that file. I stripped that stuff out and changed it to just this:

    @interface MyClassName : UIViewController <ProtoOne,ProtoTwo> {

    and the problem went away.

    Hope that helps somebody.
     
  9. PatrickCocoa macrumors 6502a

    Joined:
    Dec 2, 2008
    #9
    I'm not disagreeing with you for this instance. But note that you will have similar issues repeatedly as you continue your iPhone development:
    1. The OS is different.
    2. The development tools are different (as you've seen).
    3. The APIs are different.
    4. The language is different (Objective-c).
    5. The paradigm is different (if you haven't been doing OOP).

    So you may be better served if you explicitly choose to react differently during each of the next 100 issues that arise. You can choose the emotional/blame Apple approach above, or you can embrace each as a learning opportunity, a way to expand your horizons. Figure out how to use the documentation and the various developer communities (this one included).

    I'm not saying Apple is right and that Xcode is perfect, I'm saying you have control of how you react.
     

Share This Page