AFNetworking no comstackrá

Estoy totalmente atrapado tratando de ejecutar un proyecto en el simulador utilizando AFNetworking. He usado esta dependencia antes en otros proyectos, así que no entiendo qué va mal aquí. Primero, el error cuando bash ejecutar el proyecto:

Undefined symbols for architecture x86_64: "_OBJC_CLASS_$_AFHTTPSessionManager", referenced from: _OBJC_CLASS_$_ShanetworkingNetworkObject in ShanetworkingNetworkObject.o "_OBJC_CLASS_$_AFJSONResponseSerializer", referenced from: objc-class-ref in ShanetworkingNetworkObject.o "_OBJC_METACLASS_$_AFHTTPSessionManager", referenced from: _OBJC_METACLASS_$_ShanetworkingNetworkObject in ShanetworkingNetworkObject.o ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) 

Estoy seguro de que esto es parte del problema, pero no sé cómo resolverlo:

introduzca la descripción de la imagen aquí

Este es el file .h ofensivo:

 #import <Foundation/Foundation.h> #import <AFNetworking/AFNetworking.h> #import "ShanetworkingSessionKey.h" @interface ShanetworkingNetworkObject : AFHTTPSessionManager + (ShanetworkingNetworkObject *) shanetworkingNetworkObject; // class method to return the singleton object @end 

Puede ser interesante tener en count que cuando empiezo a escribir la línea de import para AFNetworking, la línea se llena después de unos pocos caracteres, así que sé que hay cierta conciencia de la presencia de la dependencia AFNetworking.

Instalé la dependencia usando CocoaPods. Aquí está mi Podfile:

 # Uncomment this line to define a global platform for your project platform :ios, '8.0' source 'https://github.com/CocoaPods/Specs.git' target 'WeRun' do pod "AFNetworking", "2.5.2" end target 'WeRunTests' do end 

Y, por supuesto, estoy trabajando en .xcworkspace (no .xcodeproj ).

Una cosa más, mi file xcconfig se parece a esto, lo que coincide con otras comstackciones de AFNetworking exitosas:

 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/AFNetworking" OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/AFNetworking" OTHER_LDFLAGS = -ObjC -l"Pods-MyApp-AFNetworking" -framework "CoreGraphics" -framework "MobileCoreServices" -framework "Security" -framework "SystemConfiguration" OTHER_LIBTOOLFLAGS = $(OTHER_LDFLAGS) PODS_ROOT = ${SRCROOT}/Pods 

No sé qué más search. He eliminado completamente el pod y lo reinstalé, solo para encontrar el mismo error. ¿Alguien puede ayudarme a resolver esto? ¡Gracias!

Pasé un par de horas luchando con este mismo problema, pasando por todos los éxitos de Google que pude encontrar. La construcción del dispositivo estaba funcionando, pero la construcción para el simulador no fue así.

Estos son los pasos que finalmente resolvieron el problema:

  1. Borre las memorys caching de XCode:

     rm -rf ~/Library/Developer/Xcode/DerivedData/ 
  2. Borre las memorys caching de CocoaPods y reinstale las dependencies:

     rm -rf "${HOME}/Library/Caches/CocoaPods" rm -rf "`pwd`/Pods/" pod update 
  3. Finalmente dirígete al proyecto "Pods" y configura Build Active Architectures Only a No también para la configuration "Debug".

Le sugeriría que agregue el indicador $ (henetworkingado) en "Configuración de compilation".

  • Toque en el ícono del proyecto azul
  • Seleccione la pestaña "Configurar configuraciones"
  • En "Vincular" encontrarás una configuration llamada "Otros indicadores de linkeres"
  • agregar $ (henetworkingado) en el campo de text

No dé la versión después de AFNetworking en el file pod. E intenta de nuevo. Asegúrate de eliminar la coma también.

Bueno, resolví esto, pero no estoy seguro de por qué funcionó. Estaba experimentando con los otros indicadores de enlace en la configuration de compilation. Eliminé la bandera que colocó allí la installation de CocoaPods (supuestamente) y la reemplacé copyndo el indicador del file .xcconfig . Específicamente, agregué este text: -l"Pods-WeRun-AFNetworking" como segundo indicador justo después de -ObjC . Me parece que es exactamente lo que acabo de eliminar, así que realmente dude en sugerir esto como una 'respuesta', pero funciona ahora, así que algo debe haber cambiado.

Si alguien puede aclarar esto o decirme que me estoy engañando, por favor avíseme. Gracias por las sugerencias.

Tuve el mismo problema, cuando tenía -lc++ ya configurado en Other linker flags para el propósito de uso de la biblioteca cpp.
-ObjC -l"AFNetworking" estas dos banderas -ObjC -l"AFNetworking" en Other linker flags , que funcionaron y comstackron con éxito. Estas son las dos banderas -ObjC y -l"AFNetworking" . -ObjC -l"AFNetworking" agrega simultáneamente -ObjC -l"AFNetworking" .

Un método simple Descargue el file de repository. Arrastre y suelte el contenido de la carpeta AFnetworking (puede crear grupos si es necesario) luego use la biblioteca. (Use #import "AFnetworking.h")