Archived

This forum has been archived. Please start a new discussion on GitHub.

IceTouch 1.2 with XCode 4.2: missing symbols

Hello Guys,

I have a Problem: I made a Project >1 Year ago for iPhone and now, with iOS5, it didn´t work anymore on the devices we used.
So I had to renew all Plugins, so yours (IceTouch 1.0->1.2).
I deleted this plugin-file you mentioned in your scenario, installed 1.2 and tried to run it -> didn´t work, so I reconfigured all. Maybe I made it worse than before, I don´t know, but I hope you can help me.
Also for me, today was the first time to work with Xcode 4.2, before I only worked with 3.*.

Thank you for your help in advance.

My config now:
Attachment not found.

My Error in XCode
Ld /Users/uid04100/Library/Developer/Xcode/DerivedData/navcore-bedienung-bqvkgcxwfqluaremviomdlknazpa/Build/Products/Debug-iphonesimulator/navcore-bedienung.app/navcore-bedienung normal i386
    cd /Users/uid04100/Downloads/Archiv
    setenv MACOSX_DEPLOYMENT_TARGET 10.6
    setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
    /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/clang -arch i386 -isysroot /var/folders/GM/GMzVFCBdG5miyi7-c7zXlU+++TM/-Caches-/com.apple.Xcode.502/CompositeSDKs/iphonesimulator-iPhoneSimulator5.0-dzmvmybpezhjtbehxbqnbjgqngpg -L/Users/uid04100/Library/Developer/Xcode/DerivedData/navcore-bedienung-bqvkgcxwfqluaremviomdlknazpa/Build/Products/Debug-iphonesimulator -L/opt/IceTouch-1.2.0/lib -F/Users/uid04100/Library/Developer/Xcode/DerivedData/navcore-bedienung-bqvkgcxwfqluaremviomdlknazpa/Build/Products/Debug-iphonesimulator -filelist /Users/uid04100/Library/Developer/Xcode/DerivedData/navcore-bedienung-bqvkgcxwfqluaremviomdlknazpa/Build/Intermediates/navcore-bedienung.build/Debug-iphonesimulator/navcore-bedienung.build/Objects-normal/i386/navcore-bedienung.LinkFileList -mmacosx-version-min=10.6 -Xlinker -objc_abi_version -Xlinker 2 -lIceObjC -all_load -ObjC -lGlacier2Objc -lstdc++ -Wl,-no_compact_unwind -Xlinker -no_implicit_dylibs -D__IPHONE_OS_VERSION_MIN_REQUIRED=50000 /Users/uid04100/Library/Developer/Xcode/DerivedData/navcore-bedienung-bqvkgcxwfqluaremviomdlknazpa/Build/Products/Debug-iphonesimulator/libThree20UICommon.a /Users/uid04100/Library/Developer/Xcode/DerivedData/navcore-bedienung-bqvkgcxwfqluaremviomdlknazpa/Build/Products/Debug-iphonesimulator/libThree20.a /Users/uid04100/Library/Developer/Xcode/DerivedData/navcore-bedienung-bqvkgcxwfqluaremviomdlknazpa/Build/Products/Debug-iphonesimulator/libThree20UINavigator.a /Users/uid04100/Library/Developer/Xcode/DerivedData/navcore-bedienung-bqvkgcxwfqluaremviomdlknazpa/Build/Products/Debug-iphonesimulator/libThree20Core.a /Users/uid04100/Library/Developer/Xcode/DerivedData/navcore-bedienung-bqvkgcxwfqluaremviomdlknazpa/Build/Products/Debug-iphonesimulator/libThree20UI.a -framework QuartzCore /Users/uid04100/Library/Developer/Xcode/DerivedData/navcore-bedienung-bqvkgcxwfqluaremviomdlknazpa/Build/Products/Debug-iphonesimulator/libThree20Network.a /Users/uid04100/Library/Developer/Xcode/DerivedData/navcore-bedienung-bqvkgcxwfqluaremviomdlknazpa/Build/Products/Debug-iphonesimulator/libThree20Style.a -framework Foundation -framework UIKit -framework CoreGraphics -framework Security -framework CFNetwork -framework SystemConfiguration -framework MapKit -framework QuartzCore -framework CoreLocation -o /Users/uid04100/Library/Developer/Xcode/DerivedData/navcore-bedienung-bqvkgcxwfqluaremviomdlknazpa/Build/Products/Debug-iphonesimulator/navcore-bedienung.app/navcore-bedienung

Undefined symbols for architecture i386:
  "_OBJC_CLASS_$_ICEObject", referenced from:
      _OBJC_CLASS_$_SyDRpcInterfaceSyDNavWM in SyDNav.o
      _OBJC_CLASS_$_SyDRpcInterfaceSyDNavGuidanceCallback in SyDNav.o
      _OBJC_CLASS_$_SyDRpcInterfaceSyDNavGuidance in SyDNav.o
      objc-class-ref in SyDNav.o
      _OBJC_CLASS_$_VehicleIFHomeView in VehicleIF.o
      _OBJC_CLASS_$_VehicleIFCockpitButtonListener in VehicleIF.o
      _OBJC_CLASS_$_VehicleIFCockpitButtons in VehicleIF.o
      ...
  "_OBJC_CLASS_$_ICEOperationNotExistException", referenced from:
      objc-class-ref in SyDNav.o
      objc-class-ref in VehicleIF.o
  "_OBJC_METACLASS_$_ICEObject", referenced from:
      _OBJC_METACLASS_$_SyDRpcInterfaceSyDNavWM in SyDNav.o
      _OBJC_METACLASS_$_SyDRpcInterfaceSyDNavGuidanceCallback in SyDNav.o
      _OBJC_METACLASS_$_SyDRpcInterfaceSyDNavGuidance in SyDNav.o
      _OBJC_METACLASS_$_VehicleIFHomeView in VehicleIF.o
      _OBJC_METACLASS_$_VehicleIFCockpitButtonListener in VehicleIF.o
      _OBJC_METACLASS_$_VehicleIFCockpitButtons in VehicleIF.o
      _OBJC_METACLASS_$_VehicleIFSyDRemote in VehicleIF.o
      ...
  "_OBJC_CLASS_$_ICEObjectPrx", referenced from:
      _OBJC_CLASS_$_SyDRpcInterfaceSyDNavWMPrx in SyDNav.o
      _OBJC_CLASS_$_SyDRpcInterfaceSyDNavGuidanceCallbackPrx in SyDNav.o
      _OBJC_CLASS_$_SyDRpcInterfaceSyDNavGuidancePrx in SyDNav.o
      _OBJC_CLASS_$_VehicleIFHomeViewPrx in VehicleIF.o
      _OBJC_CLASS_$_VehicleIFCockpitButtonListenerPrx in VehicleIF.o
      _OBJC_CLASS_$_VehicleIFCockpitButtonsPrx in VehicleIF.o
      _OBJC_CLASS_$_VehicleIFSyDRemotePrx in VehicleIF.o
      ...
  "_OBJC_METACLASS_$_ICEObjectPrx", referenced from:
      _OBJC_METACLASS_$_SyDRpcInterfaceSyDNavWMPrx in SyDNav.o
      _OBJC_METACLASS_$_SyDRpcInterfaceSyDNavGuidanceCallbackPrx in SyDNav.o
      _OBJC_METACLASS_$_SyDRpcInterfaceSyDNavGuidancePrx in SyDNav.o
      _OBJC_METACLASS_$_VehicleIFHomeViewPrx in VehicleIF.o
      _OBJC_METACLASS_$_VehicleIFCockpitButtonListenerPrx in VehicleIF.o
      _OBJC_METACLASS_$_VehicleIFCockpitButtonsPrx in VehicleIF.o
      _OBJC_METACLASS_$_VehicleIFSyDRemotePrx in VehicleIF.o
      ...
  "_OBJC_CLASS_$_ICEUnknownUserException", referenced from:
      objc-class-ref in SyDNav.o
      objc-class-ref in VehicleIF.o
  "_OBJC_METACLASS_$_ICEEnumHelper", referenced from:
      _OBJC_METACLASS_$_SyDRpcInterfaceScreenIDHelper in SyDNav.o
      _OBJC_METACLASS_$_SyDRpcInterfaceStyleIDHelper in SyDNav.o
      _OBJC_METACLASS_$_SyDRpcInterfacePictogramIDHelper in SyDNav.o
      _OBJC_METACLASS_$_SyDRpcInterfacePositionTypeHelper in SyDNav.o
      _OBJC_METACLASS_$_VehicleIFKeyCodeHelper in VehicleIF.o
      _OBJC_METACLASS_$_VehicleIFStyleIDHelper in VehicleIF.o
  "_OBJC_CLASS_$_ICEEnumHelper", referenced from:
      _OBJC_CLASS_$_SyDRpcInterfaceScreenIDHelper in SyDNav.o
      _OBJC_CLASS_$_SyDRpcInterfaceStyleIDHelper in SyDNav.o
      _OBJC_CLASS_$_SyDRpcInterfacePictogramIDHelper in SyDNav.o
      _OBJC_CLASS_$_SyDRpcInterfacePositionTypeHelper in SyDNav.o
      _OBJC_CLASS_$_VehicleIFKeyCodeHelper in VehicleIF.o
      _OBJC_CLASS_$_VehicleIFStyleIDHelper in VehicleIF.o
  "_OBJC_EHTYPE_$_ICEException", referenced from:
      GCC_except_table120 in SyDNav.o
      GCC_except_table138 in SyDNav.o
      GCC_except_table156 in SyDNav.o
      GCC_except_table177 in SyDNav.o
      GCC_except_table133 in VehicleIF.o
      GCC_except_table147 in VehicleIF.o
      GCC_except_table165 in VehicleIF.o
      ...
      GCC_except_table120 in SyDNav.o
      GCC_except_table138 in SyDNav.o
      GCC_except_table156 in SyDNav.o
      GCC_except_table177 in SyDNav.o
      GCC_except_table133 in VehicleIF.o
      GCC_except_table147 in VehicleIF.o
      GCC_except_table165 in VehicleIF.o
      ...
      GCC_except_table120 in SyDNav.o
      GCC_except_table138 in SyDNav.o
      GCC_except_table156 in SyDNav.o
      GCC_except_table177 in SyDNav.o
      GCC_except_table133 in VehicleIF.o
      GCC_except_table147 in VehicleIF.o
      GCC_except_table165 in VehicleIF.o
      ...
      GCC_except_table120 in SyDNav.o
      GCC_except_table138 in SyDNav.o
      GCC_except_table156 in SyDNav.o
      GCC_except_table177 in SyDNav.o
      GCC_except_table133 in VehicleIF.o
      GCC_except_table147 in VehicleIF.o
      GCC_except_table165 in VehicleIF.o
      ...
  "_OBJC_EHTYPE_$_ICEUserException", referenced from:
      GCC_except_table223 in SyDNav.o
      GCC_except_table224 in SyDNav.o
      GCC_except_table230 in SyDNav.o
      GCC_except_table231 in SyDNav.o
      GCC_except_table407 in VehicleIF.o
      GCC_except_table408 in VehicleIF.o
      GCC_except_table409 in VehicleIF.o
      ...
      GCC_except_table223 in SyDNav.o
      GCC_except_table224 in SyDNav.o
      GCC_except_table230 in SyDNav.o
      GCC_except_table231 in SyDNav.o
      GCC_except_table407 in VehicleIF.o
      GCC_except_table408 in VehicleIF.o
      GCC_except_table409 in VehicleIF.o
      ...
  "_OBJC_CLASS_$_ICEMainThreadDispatch", referenced from:
      objc-class-ref in SyDCommunicator.o
  "_OBJC_CLASS_$_ICEInitializationData", referenced from:
      objc-class-ref in SyDCommunicator.o
  "_OBJC_CLASS_$_ICEUtil", referenced from:
      objc-class-ref in SyDCommunicator.o
  "_OBJC_EHTYPE_$_ICELocalException", referenced from:
      GCC_except_table12 in SyDCommunicator.o
      GCC_except_table13 in SyDCommunicator.o
      GCC_except_table14 in SyDCommunicator.o
      GCC_except_table15 in SyDCommunicator.o
      GCC_except_table16 in SyDCommunicator.o
      GCC_except_table17 in SyDCommunicator.o
      GCC_except_table18 in SyDCommunicator.o
      ...
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Comments

  • xdm
    xdm La Coruña, Spain
    Hi Nico,

    For SDK based builds you don't need to add "/opt/IceTouch-1.2.0/lib" to the "Library Search Paths", you must remove that setting from your configuration to fix the linker errors. /opt/IceTouch-1.2.0/lib contains the ObjC runtime for Mac OS X command line applications.

    In "Other Linker Flags", you can remove "-lIceObjC -all_load -ObjC", the Xcode plug-in automatically adds that when required, so you just need "-lGlacier2ObjC" there.
  • Thank you. I did, what you wrote:
    Now, there are at least much less errors:
    Ld /Users/uid04100/Library/Developer/Xcode/DerivedData/navcore-bedienung-bqvkgcxwfqluaremviomdlknazpa/Build/Products/Debug-iphonesimulator/navcore-bedienung.app/navcore-bedienung normal i386
        cd /Users/uid04100/Downloads/Archiv
        setenv MACOSX_DEPLOYMENT_TARGET 10.6
        setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
        /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/clang -arch i386 -isysroot /var/folders/GM/GMzVFCBdG5miyi7-c7zXlU+++TM/-Caches-/com.apple.Xcode.502/CompositeSDKs/iphonesimulator-iPhoneSimulator5.0-dzmvmybpezhjtbehxbqnbjgqngpg -L/Users/uid04100/Library/Developer/Xcode/DerivedData/navcore-bedienung-bqvkgcxwfqluaremviomdlknazpa/Build/Products/Debug-iphonesimulator -F/Users/uid04100/Library/Developer/Xcode/DerivedData/navcore-bedienung-bqvkgcxwfqluaremviomdlknazpa/Build/Products/Debug-iphonesimulator -filelist /Users/uid04100/Library/Developer/Xcode/DerivedData/navcore-bedienung-bqvkgcxwfqluaremviomdlknazpa/Build/Intermediates/navcore-bedienung.build/Debug-iphonesimulator/navcore-bedienung.build/Objects-normal/i386/navcore-bedienung.LinkFileList -mmacosx-version-min=10.6 -Xlinker -objc_abi_version -Xlinker 2 -lGlacier2Objc -all_load -ObjC -lstdc++ -lIceObjC -Wl,-no_compact_unwind -Xlinker -no_implicit_dylibs -D__IPHONE_OS_VERSION_MIN_REQUIRED=50000 /Users/uid04100/Library/Developer/Xcode/DerivedData/navcore-bedienung-bqvkgcxwfqluaremviomdlknazpa/Build/Products/Debug-iphonesimulator/libThree20UICommon.a /Users/uid04100/Library/Developer/Xcode/DerivedData/navcore-bedienung-bqvkgcxwfqluaremviomdlknazpa/Build/Products/Debug-iphonesimulator/libThree20.a /Users/uid04100/Library/Developer/Xcode/DerivedData/navcore-bedienung-bqvkgcxwfqluaremviomdlknazpa/Build/Products/Debug-iphonesimulator/libThree20UINavigator.a /Users/uid04100/Library/Developer/Xcode/DerivedData/navcore-bedienung-bqvkgcxwfqluaremviomdlknazpa/Build/Products/Debug-iphonesimulator/libThree20Core.a /Users/uid04100/Library/Developer/Xcode/DerivedData/navcore-bedienung-bqvkgcxwfqluaremviomdlknazpa/Build/Products/Debug-iphonesimulator/libThree20UI.a -framework QuartzCore /Users/uid04100/Library/Developer/Xcode/DerivedData/navcore-bedienung-bqvkgcxwfqluaremviomdlknazpa/Build/Products/Debug-iphonesimulator/libThree20Network.a /Users/uid04100/Library/Developer/Xcode/DerivedData/navcore-bedienung-bqvkgcxwfqluaremviomdlknazpa/Build/Products/Debug-iphonesimulator/libThree20Style.a -framework Foundation -framework UIKit -framework CoreGraphics -framework Security -framework CFNetwork -framework SystemConfiguration -framework MapKit -framework QuartzCore -framework CoreLocation -o /Users/uid04100/Library/Developer/Xcode/DerivedData/navcore-bedienung-bqvkgcxwfqluaremviomdlknazpa/Build/Products/Debug-iphonesimulator/navcore-bedienung.app/navcore-bedienung
    
    Undefined symbols for architecture i386:
      "_OBJC_CLASS_$_EASession", referenced from:
          objc-class-ref in libIceObjC.a(AccessoryConnector.o)
      "_OBJC_CLASS_$_EAAccessoryManager", referenced from:
          objc-class-ref in libIceObjC.a(AccessoryEndpointI.o)
    ld: symbol(s) not found for architecture i386
    clang: error: linker command failed with exit code 1 (use -v to see invocation)
    
    
  • xdm
    xdm La Coruña, Spain
    You need to add "ExternalAccessory.framework" to the Linked Framework and Libraries. That is in the target configuration "Summary > Linked Framework and Libraries".
  • Ok, now it works.
    You should mention this (adding the framework) in your release-notes here:
    Release Notes - Ice Touch 1.2 - ZeroC
    I don´t really understand, why you used this lib, but ok. I thought, this is just for using devices on the connector or bluetooth?

    Also I found a second point. With 1.0, you had to have a run script when using the simulator (copying dylibs (?)). This now also gives an error, as you don´t even need it anymore.
  • xdm
    xdm La Coruña, Spain
    Ok, now it works.
    Glad is working,
    You should mention this (adding the framework) in your release-notes here:
    Release Notes - Ice Touch 1.2 - ZeroC
    We will update that.
    I don´t really understand, why you used this lib, but ok. I thought, this is just for using devices on the connector or bluetooth?
    That is required for the IceTouch Accessory transport see:

    Release Notes - Ice Touch 1.2 - ZeroC
    Also I found a second point. With 1.0, you had to have a run script when using the simulator (copying dylibs (?)). This now also gives an error, as you don´t even need it anymore.
    Right, we will add a note about that in "Upgrading your application from Ice Touch 1.0" section of release notes.
  • Thank you.