I'm trying to using both OpenCV and Tesseract in my iPhone app.
I have no problem working with either one of them - all is compiled and linked perfectly.
But when I'm trying to work with both of them it gives me link errors:
Undefined symbols for architecture i386:
"cv::_OutputArray::_OutputArray(cv::Mat&)", referenced from:
-[BTLOpenCVCameraViewController processImage:] in BTLOpenCVCameraViewController.o
"cv::_OutputArray::~_OutputArray()", referenced from:
-[BTLOpenCVCameraViewController processImage:] in BTLOpenCVCameraViewController.o
"cv::Mat::deallocate()", referenced from:
cv::Mat::release() in BTLOpenCVCameraViewController.o
"cv::Mat::Mat(cv::Mat const&, cv::Rect_<int> const&)", referenced from:
-[BTLOpenCVCameraViewController processImage:] in BTLOpenCVCameraViewController.o
"cv::fastFree(void*)", referenced from:
cv::Mat::~Mat() in BTLOpenCVCameraViewController.o
"cv::Mat::copyTo(cv::_OutputArray const&) const", referenced from:
-[BTLOpenCVCameraViewController processImage:] in BTLOpenCVCameraViewController.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
I'm running iOS6.1, C++ Standard Library is set to: "Compiler Default"
Architecture is set to: armv7.
ANy ideas??
Related
I'm coding using swift and followed the AWS documentation:
Added the updated frameworks on the Objective-C Bridging header
Setup cognito on app delegate
after that, this is spitting out:
Undefined symbols for architecture i386:
"_deflate", referenced from:
-[NSData(AWSGZIP) awsgzip_gzippedDataWithCompressionLevel:] in AWSCore(AWSGZIP.o)
"_deflateEnd", referenced from:
-[NSData(AWSGZIP) awsgzip_gzippedDataWithCompressionLevel:] in AWSCore(AWSGZIP.o)
"deflateInit2", referenced from:
-[NSData(AWSGZIP) awsgzip_gzippedDataWithCompressionLevel:] in AWSCore(AWSGZIP.o)
"_inflate", referenced from:
-[NSData(AWSGZIP) awsgzip_gunzippedData] in AWSCore(AWSGZIP.o)
"_inflateEnd", referenced from:
-[NSData(AWSGZIP) awsgzip_gunzippedData] in AWSCore(AWSGZIP.o)
"inflateInit2", referenced from:
-[NSData(AWSGZIP) awsgzip_gunzippedData] in AWSCore(AWSGZIP.o)
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Using Xcode 7.0
How can I fix this?
You need to add libsqlite3.dylib and libz.dylib and SystemConfiguration.framework. See Set Up the SDK for iOS for more details.
Can't figure this out. Tried making a completely new project and it still doesn't work. This app uses GoogleMaps. Error below:
Undefined symbols for architecture i386:
"_CBAdvertisementDataManufacturerDataKey", referenced from:
-[GMSx_PEBeaconScanner centralManager:didDiscoverPeripheral:advertisementData:RSSI:] in
GoogleMaps(PEBeaconScanner.o) "_CBAdvertisementDataServiceDataKey",
referenced from:
-[GMSx_PEBeaconScanner centralManager:didDiscoverPeripheral:advertisementData:RSSI:] in
GoogleMaps(PEBeaconScanner.o)
"_CBCentralManagerScanOptionAllowDuplicatesKey", referenced from:
-[GMSx_PEBeaconScanner scanIfAppropriate] in GoogleMaps(PEBeaconScanner.o) "_OBJC_CLASS_$_CBCentralManager",
referenced from:
objc-class-ref in GoogleMaps(PEBeaconScanner.o) "_OBJC_CLASS_$_CBUUID", referenced from:
objc-class-ref in GoogleMaps(PEBeacon.o)
objc-class-ref in GoogleMaps(PEBeaconScanner.o) "_vImageBoxConvolve_Planar8", referenced from:
(anonymous namespace)::CreateBlurredImage(CGImage*, float, float) in GoogleMaps(GLWaterGroup.o) ld: symbol(s) not found for
architecture i386 clang: error: linker command failed with exit code 1
(use -v to see invocation)
Try importing CoreBluetooth.framework and Accelerate.framework. Also use "-ObjC" instead of "-all_load" in under "Other Linker Flags".
You can refer colink's reply in GoogleMapsSDK : Undefined symbols for architecture x86_64
I want to have my current cordova pp compatible for 64 bit iOS. I downloaded cordova 3.7 into my project but I am unable to build. I am getting the following error.
Undefined symbols for architecture arm64:
"_OBJC_METACLASS_$_CDVViewController", referenced from:
_OBJC_METACLASS_$_RootViewController in RootViewController.o
"_OBJC_METACLASS_$_CDVPlugin", referenced from:
_OBJC_METACLASS_$_DataBasePlugin in DataBasePlugin.o
_OBJC_METACLASS_$_LoginStatusPlugin in LoginStatusPlugin.o
"_OBJC_IVAR_$_CDVViewController._commandQueue", referenced from:
-[RootViewController didReceiveMemoryWarning] in RootViewController.o
"_OBJC_CLASS_$_CDVViewController", referenced from:
_OBJC_CLASS_$_RootViewController in RootViewController.o
"_OBJC_CLASS_$_CDVPlugin", referenced from:
_OBJC_CLASS_$_DataBasePlugin in DataBasePlugin.o
_OBJC_CLASS_$_LoginStatusPlugin in LoginStatusPlugin.o
"_OBJC_CLASS_$_CDVPluginResult", referenced from:
objc-class-ref in DataBasePlugin.o
objc-class-ref in LoginStatusPlugin.o
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
I have also tried the steps from below link
https://shazronatadobe.wordpress.com/2014/03/12/xcode-5-1-and-cordova-ios/
I followed the below link to add the lib file to my project
http://outof.me/embedding-cordovalib-in-your-iosphonegap-app-project/
Please help
I am new in phonegap app development in iOS. After adding CordovaLib.xcodeproj in my xcode project, I made architecture changes in buildsettings as suggested here. Other linker flag is -all_load and -Obj-C When I build the project, I get Apple Mach-O linker errors described below. I have not mentioned i386 anywhere in my build settings. How do I negate this error?
Undefined symbols for architecture i386:
"_CDVPluginHandleOpenURLNotification", referenced from:
-[AppDelegate application:handleOpenURL:] in AppDelegate.o
"_OBJC_CLASS_$_CDVPlugin", referenced from:
_OBJC_CLASS_$_LoginPlugin in LoginPlugin.o
"_OBJC_CLASS_$_CDVPluginResult", referenced from:
objc-class-ref in LoginPlugin.o
"_OBJC_CLASS_$_CDVViewController", referenced from:
_OBJC_CLASS_$_MainViewController in MainViewController.o
"_OBJC_METACLASS_$_CDVPlugin", referenced from:
_OBJC_METACLASS_$_LoginPlugin in LoginPlugin.o
"_OBJC_METACLASS_$_CDVViewController", referenced from:
_OBJC_METACLASS_$_MainViewController in MainViewController.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
When i'am trying to compile with Xcode i get the following errors:
Undefined symbols for architecture i386:
"_CGImageSourceCopyPropertiesAtIndex", referenced from:
-[SDWebImageDownloader connection:didReceiveData:] in SDWebImageDownloader.o
"_CGImageSourceCreateImageAtIndex", referenced from:
-[SDWebImageDownloader connection:didReceiveData:] in SDWebImageDownloader.o
"_CGImageSourceCreateIncremental", referenced from:
-[SDWebImageDownloader connection:didReceiveData:] in SDWebImageDownloader.o
"_CGImageSourceUpdateData", referenced from:
-[SDWebImageDownloader connection:didReceiveData:] in SDWebImageDownloader.o
"_OBJC_CLASS_$_MFMailComposeViewController", referenced from:
objc-class-ref in MWPhotoBrowser.o
"_kCGImagePropertyPixelHeight", referenced from:
-[SDWebImageDownloader connection:didReceiveData:] in SDWebImageDownloader.o
"_kCGImagePropertyPixelWidth", referenced from:
-[SDWebImageDownloader connection:didReceiveData:] in SDWebImageDownloader.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
There must be a problem with SDWebImage class, which MWPhotoBrowser use.
This is really strange and confusing, and I don't know how to fix it.
Thanks guys.
The problem is most likely that the project is not including the ImageIO framework. Go to your Target -> Build Phases -> Link and verify that in fact you have ImageIO there.
I think that i have the solution...
Go to to the target of your app and on the right, click on the Build Phases tab and in the Compile Sources Section click on + and add the SDWebImage.m
Hope that helps !