iOS: Undefined symbols for architecture i386 - ios

I'm trying to implement ios-oauthconsumer
but I'm getting this error:
Undefined symbols for architecture i386:
"_OBJC_CLASS_$_OAMutableURLRequest", referenced from:
objc-class-ref in ViewController.o
"_OBJC_CLASS_$_OAConsumer", referenced from:
objc-class-ref in ViewController.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
I tried to add the files following this solution but Xcode re-adds the file to the project. For example:
Any of you knows a way were I can add the files to the "Compile Sources" without having to re-add the file?
I'll really appreciated you help.

Make sure that each source file that needs to be linked is part of the Compile Sources section of your target. You can verify this by selecting your project in Navigator pane (as shown in your screenshot) and expanding the section shown here:
Xcode Compile Sources
You can also verify this by selecting the files and viewing their target membership in the Utilities pane in xcode.
Target Membership

Related

Undefined symbols for architecture x86_64: "_sqlite3_close", referenced

I'm new to objective-c and am getting this error when I add from sqlite3 calls in xcode. Any one know what I can do to fix this error?
Undefined symbols for architecture x86_64:
"_sqlite3_close", referenced from:
-[InAppUtils get:] in libInAppUtils.a(InAppUtils.o)
"_sqlite3_exec", referenced from:
-[InAppUtils get:] in libInAppUtils.a(InAppUtils.o)
"_sqlite3_open", referenced from:
-[InAppUtils get:] in libInAppUtils.a(InAppUtils.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
I tried adding the libsqlite3.dylib library but I can't find it on my system. Is it required? If so, how do I find it?
It looks like libsqlite3.tbd is the new libsqlite3.dylib. I added it and everything worked.
Go to the Build Phases tab. Expand the "Link Binary with Libraries" section. Click on the + icon. Search for "sqlite". Add the library

Issue when implementing iRate

When adding iRate to my app I get this error:
Undefined symbols for architecture i386:
"_OBJC_CLASS_$_iRate", referenced from:
objc-class-ref in AppDelegate.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Sounds like when you added the .m file to your project, it wasn't assigned to your target. Select iRate.m in the project navigator. Then bring up the utilities view on the right side of Xcode. Under Target Membership, make sure your app's target is checked. Try the build again.

Error with CJSONDeserializer IOS

I am new with XCode and iOS. I want to create a BD at a remote web service.
My problem is with this error:
Undefined symbols for architecture i386:
"_OBJC_CLASS_$_CJSONDeserializer", referenced from:
objc-class-ref in ViewController.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
I have a target, with the group of project with viewController.h and .m And other group with JSON libraries. Maybe, i have to configure something. I don't know.
It's very similar:
Select the project in the project navigator.
Select the Target in the detail view.
Select the Build Phase tab.
Expand the Compiled Sources section
Add the file CJSONDeserializer.m if it is not present there.
This will hopefully solve your problem

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?
Did you include the files libBabTTS.a and libMobilityStatic.a to your project?
Wild guess : You may check the visibility of headers on your projects build phase.

Architecture issue in iOS

I'm using Reachability on my project to get the type of connection used, but an error has ocurred.
Undefined symbols for architecture i386:
"_OBJC_CLASS_$_Reachability", referenced from:
objc-class-ref in ContributionViewController.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
I don't know what to do... my project is for iOS 4.3 and I've never had this kind of problem before.
Thx
Did you include the reachability framework in your projects linked libraries ? You can confirm by clicking on your project file on the file list and checking the build phases tab. It should be listed in the linked library section,

Resources