Search code examples
iosxcodexcode9google-visiongoogle-ios-vision

Undefined symbols for architecture x86_64: "_OBJC_METACLASS_$_GMVDetector" referenced from: TextDetector


I included Google Firebase MLKit to my project without cocoapods. When I try to build, I'm getting the Undefined symbol error: Xcode error image

Undefined symbols for architecture armv7:
  "_OBJC_METACLASS_$_GMVDetector", referenced from:
      l45918 in TextDetector
  "_OBJC_CLASS_$_GMVDetector", referenced from:
      l45917 in TextDetector
  "_OBJC_CLASS_$_GMVFeature", referenced from:
      _OBJC_CLASS_$_GMVTextBlockFeature in TextDetector
      _OBJC_CLASS_$_GMVTextLineFeature in TextDetector
      _OBJC_CLASS_$_GMVTextElementFeature in TextDetector
  "_OBJC_METACLASS_$_GMVFeature", referenced from:
      l45914 in TextDetector
      l45915 in TextDetector
      l45916 in TextDetector
  "_OBJC_CLASS_$_GMVUtility", referenced from:
      objc-class-ref in TextDetector
  "_OBJC_CLASS_$_GMVLogger", referenced from:
      objc-class-ref in TextDetector
  "_GMVFeatureTypeTextLine", referenced from:
      l31298 in TextDetector
  "_GMVDetectorImageOrientation", referenced from:
      l31341 in TextDetector
      l31342 in TextDetector
  "_GMVFeatureTypeTextElement", referenced from:
      l31313 in TextDetector
  "_GMVFeatureTypeTextBlock", referenced from:
      l31279 in TextDetector
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)

So far I have tried :

  1. Quitting Xcode and then clean build
  2. Manual and also drag & drop of frameworks
  3. Linked all the required resource folders
  4. Deleting the Xcode temp files
  5. Set symbols hidden by default under Build Settings to No Although the framework TextDetector is linked to the right target.

All these does not seems to work. I followed Integrate without CocoaPods for the framework setup.

Project Structure Image and Architecture in Build Settings


Solution

  • This has been resolved. I added all the other frameworks which were that came along with .zip file in the above mentioned link of Firebase. List of Frameworks. This is not a straightforward setup and is neither mentioned in readme nor in the website. May be all these frameworks are not required but many are inter dependent as they are specified in module.modulemap of each framework.