error:“”_OBJC_METACLASS_$_CDVViewController“, referenced from:” in Xcode4.3
-
03-07-2021 - |
Question
I am new to iphone develop and phonegap also. Now i want to create simple iphone app using phonegap. Now i am using phonegap2.0 in lion mac. MY Xcode version is 4.3. Now my issue is after install the phonegap2.0 in xcode when i run the Xcode in my Simulator 5.0. I got this below error.
"Undefined symbols for architecture i386:
"_OBJC_CLASS_$_CDVViewController", referenced from:
_OBJC_CLASS_$_ViewController in ViewController.o
objc-class-ref in AppDelegate.o
"_OBJC_METACLASS_$_CDVViewController", referenced from:
_OBJC_METACLASS_$_ViewController 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)"
Please help me to solve this issue. Thanks in Advance. And i have attach the Screen Shot of error page for your reference.
Solution
Check if your project links libCordova.a
(in my case Xcode forgot about the reference, when moving CordovaLib.xcodeproj to another location).
- select your project in the Project Navigator
- go to the Summary tab
- drag
CordovaLib.xcodeproj > Products > libCordova.a
to Linked Frameworks and Libraries
Clean & build.
OTHER TIPS
Please check your ViewController.m file and goto to 1. Build phase in xcode 2. Select Compile Sources 3. Press + button to add .m/.mm file
I think it will run successfully now
Remove armv7s from your build settings, for both your project and the referenced subproject Cordova. Set your target to 4.3.
I had a similar issue. Somehow my the NSManagedObject Sub-classes of my Core Data entities were in the Compile Sources table twice. The compiler would choke when it hit the first of these duplicates.
I just went into the Compile Sources table and deleted the second occurrence of each .m listing.