Archived

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

Ice Touch 1.1 Linker Errors

I'm currently trying to compile an iPhone application to act as a server using Ice Touch 1.1. However I am getting linking error's whenever i try to compile. Here are my errors:
Ld build/Debug-iphonesimulator/helloworld.app/helloworld normal i386
cd /Users/Jkt610/cmsc435/guitar/helloworld
setenv MACOSX_DEPLOYMENT_TARGET 10.6
setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin"
/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -arch i386 -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -L/Users/Jkt610/cmsc435/guitar/helloworld/build/Debug-iphonesimulator -L/opt/IceTouch-1.1/lib -L/opt/IceTouch-1.1/lib -F/Users/Jkt610/cmsc435/guitar/helloworld/build/Debug-iphonesimulator -filelist /Users/Jkt610/cmsc435/guitar/helloworld/build/helloworld.build/Debug-iphonesimulator/helloworld.build/Objects-normal/i386/helloworld.LinkFileList -mmacosx-version-min=10.6 -lIceObjC -Xlinker -objc_abi_version -Xlinker 2 -framework Foundation -framework UIKit -framework CoreGraphics -o /Users/Jkt610/cmsc435/guitar/helloworld/build/Debug-iphonesimulator/helloworld.app/helloworld

Undefined symbols:
  "_OBJC_CLASS_$_ICEOperationNotExistException", referenced from:
      objc-class-ref-to-ICEOperationNotExistException in guitar.o
  "_OBJC_EHTYPE_$_ICEUserException", referenced from:
      _OBJC_EHTYPE_$_ICEUserException$non_lazy_ptr in guitar.o
     (maybe you meant: _OBJC_EHTYPE_$_ICEUserException$non_lazy_ptr)
  "_OBJC_CLASS_$_ICEDictionaryHelper", referenced from:
      _OBJC_CLASS_$_guitarlibConfigurationHelper in guitar.o
      _OBJC_CLASS_$_guitarlibPropertyMapHelper in guitar.o
  "_OBJC_METACLASS_$_ICESequenceHelper", referenced from:
      _OBJC_METACLASS_$_guitarlibWidgetListHelper in guitar.o
      _OBJC_METACLASS_$_guitarlibEventListHelper in guitar.o
  "_OBJC_METACLASS_$_ICEDictionaryHelper", referenced from:
      _OBJC_METACLASS_$_guitarlibConfigurationHelper in guitar.o
      _OBJC_METACLASS_$_guitarlibPropertyMapHelper in guitar.o
  "_OBJC_METACLASS_$_ICEObjectPrx", referenced from:
      _OBJC_METACLASS_$_guitarlibApplicationPrx in guitar.o
      _OBJC_METACLASS_$_guitarlibProcessPrx in guitar.o
      _OBJC_METACLASS_$_guitarlibWidgetPrx in guitar.o
      _OBJC_METACLASS_$_guitarlibActionPrx in guitar.o
  "_OBJC_CLASS_$_ICESequenceHelper", referenced from:
      _OBJC_CLASS_$_guitarlibWidgetListHelper in guitar.o
      _OBJC_CLASS_$_guitarlibEventListHelper in guitar.o
  "_OBJC_CLASS_$_ICEObjectPrx", referenced from:
      _OBJC_CLASS_$_guitarlibApplicationPrx in guitar.o
      _OBJC_CLASS_$_guitarlibProcessPrx in guitar.o
      _OBJC_CLASS_$_guitarlibWidgetPrx in guitar.o
      _OBJC_CLASS_$_guitarlibActionPrx in guitar.o
  "_OBJC_CLASS_$_ICEStringHelper", referenced from:
      objc-class-ref-to-ICEStringHelper in guitar.o
  "_OBJC_EHTYPE_$_ICEException", referenced from:
      _OBJC_EHTYPE_$_ICEException$non_lazy_ptr in guitar.o
     (maybe you meant: _OBJC_EHTYPE_$_ICEException$non_lazy_ptr)
  "_OBJC_CLASS_$_ICEObject", referenced from:
      _OBJC_CLASS_$_guitarlibApplication in guitar.o
      _OBJC_CLASS_$_guitarlibProcess in guitar.o
      _OBJC_CLASS_$_guitarlibWidget in guitar.o
      _OBJC_CLASS_$_guitarlibAction in guitar.o
      objc-class-ref-to-ICEObject in guitar.o
  "_OBJC_CLASS_$_ICEUnknownUserException", referenced from:
      objc-class-ref-to-ICEUnknownUserException in guitar.o
  "_OBJC_METACLASS_$_ICEObject", referenced from:
      _OBJC_METACLASS_$_guitarlibApplication in guitar.o
      _OBJC_METACLASS_$_guitarlibProcess in guitar.o
      _OBJC_METACLASS_$_guitarlibWidget in guitar.o
      _OBJC_METACLASS_$_guitarlibAction in guitar.o
  "_OBJC_CLASS_$_ICEUserException", referenced from:
      _OBJC_CLASS_$_guitarlibInvalidConfiguration in guitar.o
  "_OBJC_METACLASS_$_ICEUserException", referenced from:
      _OBJC_METACLASS_$_guitarlibInvalidConfiguration in guitar.o
ld: symbol(s) not found
collect2: ld returned 1 exit status

Comments

  • bernard
    bernard Jupiter, FL
    Hi Banjo,

    Welcome to our forums!

    This sounds very much like this recent question: http://www.zeroc.com/forums/help-center/5339-icetouch-1-1-sdk-linker-errors.html

    Which iOS SDK and Xcode are you using?

    Best regards,
    Bernard
  • I looked at the thread you posted and it appears to be the same issue, but I am still getting the same error messages. I am using Xcode 3.2.5 with iOS 4.2.

    I have the following set:
    Library Search Path: /opt/IceTouch-1.1/lib
    Header Search Path: /opt/IceTouch/include
    Ice Home: /opt/IceTouch-1.1

    I had the other linker flag to -lIceObjC, but I removed it after reading the thread you posted. I also changed valid architectures to be just armv6, but this has not fixed my problems.
  • benoit
    benoit Rennes, France
    Hi,

    You shouldn't use the IceTouch libraries from /opt/IceTouch-1.1 to build iPhone applications. Those libraries are for use with OS X Objective-C command line applications.

    To build iPhone applications against IceTouch, you need to set the "Additional SDKs" variable in the project settings. This is documented in the paragraph number 8 of the RELEASE_NOTES. I also recommend checking out the configuration of the iPhone demos included in the /Developer/Examples/IceTouch-1.1/iPhone directory.

    Cheers,
    Benoit.