usa update pkg libro cartfile ios objective-c xcode xcode8 carthage

ios - update - El comando Linker falló con el código de salida 1(use-v para ver la invocación), Xcode 8, Swift 3



carthage usa (23)

¡Solo tenía que import Foundation !

¡Estaba usando Kitura para el lado del servidor Swift y me olvidé de esto!

¡No puedo deshacerme de este error!

He intentado todo tipo de cosas, como borrar datos derivados (Preferencias-> Ubicaciones-> hacer clic en la flecha gris para abrir la carpeta de datos derivados en Finder-> hacer clic con el botón derecho, mover a la papelera), limpiar el proyecto (CMD + Shift + K o Producto -> Limpiar), actualizando cartago y dependencias, verificó otras respuestas en StackOverflow (principalmente ajustes en Configuración de configuración / Fases), y reclonó la aplicación desde github, etc.

El mismo proyecto funciona en las computadoras de mis colaboradores.

EDITAR: De la respuesta actual mejor calificada, pude depurar un poco más ... Sin embargo, todavía no estoy seguro de cómo solucionarlo. ¿Parece que tengo algo en el proyecto dos veces? ¡Miré y no puedo encontrar nada que aparezca dos veces!

Aquí hay una foto del registro:


Ahora sé que la pregunta ya ha sido respondida. Pero si esto ayuda a alguien a ahorrar tiempo: tuve el mismo error. Revisé todo para encontrar un error muy pequeño y estúpido de mi parte. Importé un archivo personalizado ManagedObject de datos centrales en un controlador de vista de mi proyecto. Accidentalmente importé el archivo .m en lugar del archivo .h que estaba causando el símbolo duplicado en el error de arquitectura (falló el comando del enlazador) porque mi archivo .m de la clase de propiedades importa el archivo .h de la clase de datos centrales y por lo tanto causó la importación duplicada.

Así que solo verifique si ha importado los archivos correctos antes de probar varias soluciones.


Aquí está mi problema y solución:

Eliminé dos archivos del código fuente usando el árbol fuente (controlador de versión). Después de aplicar el diff, que contiene las dos clases que eliminé, Xcode no lo agregó automáticamente. Entonces obtuve un error de enlazador.

Agregué manualmente los archivos, haciendo clic derecho en el nombre del grupo y seleccionando "Agregar archivos a". Ahora mi error se resolvió.

Si alguien se enfrentó al error del vinculador con respecto al archivo de clase, intente agregarlo manualmente.


Asegúrese de que la casilla de verificación Find Implicit Dependencies esté marcada.

(Producto -> Esquema -> Editar esquema -> Crear -> Buscar dependencias implícitas)


De acuerdo ... Entonces, esto es lo que resolvió mi problema ...

en el archivo delegado de la aplicación:

#import "AppDelegate.h" #import "DarkSkyAPI.h" //#import "Credentials.h"

Ya había importado Credentials.h en el archivo DarkSkyAPI.m de mi proyecto. Al comentar la importación adicional, el error desapareció.

Algunas cosas para mencionar y quizás ayudar a cualquiera en el futuro. La respuesta de @ umairqureshi_6 me ayudó a lo largo del proceso, pero no la resolvió. Me llevó a donde pude extraer la información. Seguí viendo los archivos AppDelegate y DarkSkyAPI apareciendo en el registro de errores y la información que extraía del archivo de Credenciales estaba causando el error. Sabía que tenía que estar en uno de estos 3 archivos, así que verifiqué de inmediato las importaciones, porque recordé haber escuchado que .h transporta todas las importaciones de su archivo .m. ¡Auge!


En mi caso, he cambiado el nombre de Target en mi Podfile lo que es crear el mismo error para mí.

Solución

Simplemente vaya a project-> Build Phase->Link Binary with libraries Elimine los viejos FrameWorks haciendo clic en el minus button(-) Y limpie y ejecute nuevamente. Me funciona.

Eliminar .framework no .framework .


En mi caso, la razón del error es la biblioteca que se vinculó dos veces.

Utilizo react-native por lo que se vinculó automáticamente mediante el react-native link y manualmente en xcode.


Estaba enfrentando el mismo problema hoy en xcode 8 versión 8.3.2

haga clic derecho en el problema -> revelar en el registro

entonces puede verificar qué está causando ese problema


Estaba probando el marco Sparkle con CocoaPods.

Lamentablemente, puse "pod ''Sparkle'', ''~> 1.21''" en el PodFile en el lugar equivocado. Lo puse debajo de Prueba (para pruebas unitarias).

Una vez colocado en el lugar correcto en PodFile, todo está bien.


Las otras respuestas no me funcionaron, así que aquí comparto mi solución en caso de que pueda ayudar a alguien más:

Mi problema era que estaba configurando el Podfile de mi XCode-Project para la plataforma incorrecta. Cambiar "plataforma: ios" al comienzo de mi Podfile a "plataforma: macos" me funcionó para deshacerme del error.


Muchas soluciones se mencionan anteriormente. Nadie trabajó para mí (pero intente primero lo anterior).

Seleccione Proyecto -> Seleccionar destino -> Marco vinculado y bibliotecas -> Agregar todas las bibliotecas de pod. (eliminar si existen en binarios incrustados)

Ahora elimine estos de la Carpeta Framework en el explorador de archivos izquierdo de xcode.

Esto resolvió mi problema.


No tuve este problema cuando construí y ejecuté en mi propio dispositivo. Solo tuve este problema con los simuladores. Simplemente reinicié mi computadora y la ejecuté. Funcionó.


Ok, tuve el mismo problema hoy y comencé a buscarlo en Google cuando me encontré con este hilo. No terminé de leer la pregunta cuando la respuesta me llamó la atención: declaró una clase con un constructor vacío

class MyClass{ MyClass(); void func_one(){ // code } void func_two(){ // code } ~MyClass(){ cout << "Deleting object" << endl; } };

Entonces pensé por qué no terminar (no estoy seguro si estoy en lo correcto con la selección de palabras aquí, pero a quién le importa) el constructor de mi clase con llaves ( {} ). Así que lo hice:

class MyClass{ MyClass(){} void func_one(){ // code } void func_two(){ // code } ~MyClass(){ cout << "Deleting object" << endl; } };

Eliminado el problema, mi código comenzó a funcionar perfectamente.

Lo sé, la buena práctica es investigar el problema y encontrar la causa real, pero esto funcionó para mí.


Para cualquiera que tenga este problema con el marco Flurry. Esto es lo que solucionó mi problema. Para mí, el problema era que había importado los siguientes archivos pero nunca los usé. "libFlurryTVOS_9.2.3" "libFlurryWatch_9.2.3"

Así que todo lo que tenía que hacer era ir a la configuración de destino del proyecto y eliminar estos 2 archivos de la sección "Marco vinculado y bibliotecas" y el problema se resolvió.


Para mí, el archivo de bloqueo de gemas especificaba una versión anterior de cocoapods que la que había instalado. Tuve que volver a bifurcar y ejecutar la instalación de bundle exec pod install lugar de la pod install de pod install


Seleccione el proyecto-> Fase de construcción-> Enlace binario con bibliotecas y agregue todas las bibliotecas de pod.


Tal vez instaló un archivo pod y todavía está intentando construir desde el archivo .xcodeproj lugar de .xcworkspace


Tuve el mismo problema

La causa fue que declaró la misma variable global en 2 archivos . Entonces mostraba el mismo error al decir 2 símbolos duplicados .

La solución fue eliminar esas variables.


Tuve el mismo problema al usar Cartago para las dependencias.

Simplemente vaya a Seleccionar proyecto -> Configuración de compilación -> Buscar Habilitar código de bits -> Si se selecciona Sí, seleccione No.

Eso resolvió este problema para mí.


Tuve los mismos problemas al hacer una compilación del proyecto Ionic 1.

Pude resolver el problema después de eliminar el archivo CDVLogger.h & CDVLogger.m


Yo tuve el mismo problema. Si está revisando algún proyecto de github, entonces, en lugar de usar git clone, use git lfs clone, ya que a veces, algunos archivos grandes no se clonan correctamente usando solo git. Además, asegúrese de que su código de bits esté deshabilitado.


intentaste una limpieza? cmd + shift + k


lo único que funcionó para mí fue ejecutar pod deintegrate e pod install