J'essaie d'installer le SDK Google Maps et je rencontre cette erreur en exécutant:
Undefined symbols for architecture x86_64:
"_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*, double, double) in GoogleMaps(GLWaterGroup.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
J'ai remarqué les modifications suivantes lorsque j'ai mis à niveau une application qui utilisait l'ancien SDK de Google Maps installé manuellement:
Si vous utilisez la méthode d’installation de CocoaPods (selon leurs instructions actuelles), les frameworks requis doivent être installés, mais ils seront toujours dérangés par -all_load .
assurez-vous que les suivants sont inclus
Framework et kit GoogleMaps SDK
GoogleMaps (avec l'extension .framework) est présent dans votre répertoire racine (où se trouve votre .xcodeproj)
GoogleMaps (avec l'extension .bundle) est référencé dans votre projet xcode
Cadres suivants
Accelerate.framework
AVFoundation.framework
CoreBluetooth.framework
CoreData.framework
CoreGraphics.framework
CoreLocation.framework
CoreText.framework
GLKit.framework
ImageIO.framework
libc ++. dylib
libicucore.dylib
libz.dylib
OpenGLES.framework
QuartzCore.framework
Security.framework
SystemConfiguration.framework
Paramètres de construction
La valeur de l'architecture dans les paramètres de votre projet inclut armv7.
Other Linker Flags a -ObjC, si non présent l'ajouter
**_vImageBoxConvolve_Planar8, referenced from: (anonymous namespace)::CreateBlurredImage(CGImage*, double, double) in GoogleMaps(GLWaterGroup.o)**
This required "Accelerate.framework". So, please add it.
Steps:
1)Build Phases -> Link Bundle with Libraries.
2)Click "+",
3)Select "Accelerate.framework". Finish.
===================================
Others errors required "CoreBluetooth.framework. So, please add it also in similar way.
Il semble que l'API de Google a besoin de CoreBluetooth pour l'emplacement de Beacon. Lien contre CoreBluetooth.framework
dans vos phases de construction et tout devrait bien se passer.
EDIT: Assurez-vous d'installer GoogleMaps en suivant ces instructions pour éviter tout problème: https://developers.google.com/maps/documentation/ios/start
J'ai le même problème, dans mon cas, j'ai 2 références de GoogleMap.framework, j'ai supprimé l'ancienne référence du framework et le problème a été résolu :)
**_vImageBoxConvolve_Planar8, referenced from: (anonymous namespace)::CreateBlurredImage(CGImage*, double, double) in GoogleMaps(GLWaterGroup.o)**
This required "Accelerate.framework". So, please add it.
Steps:
1)Build Phases -> Link Bundle with Libraries.
2)Click "+",
3)Select "Accelerate.framework". Finish.
La suppression de -all_load flag de (Cibles-> Paramètres de construction-> Autre drapeau de l'éditeur de liens) a résolu mon problème lors de l'utilisation de cabossons.