Search code examples
iosxcode4linker-errorstext-to-speech

Acapela TTS engine: "Undefined symbols" in XCode for all classes


I'm trying to get started with the Acapela TTS engine for iPhone. I'm using XCode 4 and I've been following these instructions for setup:

http://www.acapela-for-iphone.com/documentation-quick-start-how-to-add-tts-in-your-app

I've added the voice, and added all the necessary files (from the api and license folders) to a group called "TTS", added them to my project's target, and imported them into one of my view controllers in the same manner as the tutorial. However, when I build I get this message:

Undefined symbols for architecture i386:
  "_OBJC_CLASS_$_AcapelaLicense", referenced from:
      objc-class-ref in NavigationViewController.o
  "_OBJC_CLASS_$_AcapelaSpeech", referenced from:
      objc-class-ref in NavigationViewController.o
      objc-class-ref in AcapelaSetup.o
  "_AcapelaVoiceName", referenced from:
      -[AcapelaSetup SetCurrentVoice:] in AcapelaSetup.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

There are no errors for the files not being found, and when I cmd+click on on the #import statements it takes me to the relevant source code files. So how come XCode thinks the symbols are undefined?


Solution

  • Did you include the files libBabTTS.a and libMobilityStatic.a to your project?