Motivo: no se encontró ninguna image adecuada.

dyld: Library not loaded: @rpath/libswiftCore.dylib Referenced from: /var/mobile/Containers/Bundle/Application/3FC2DC5C-A908-42C4-8508-1320E01E0D5B/Stylist.app/Stylist Reason: no suitable image found. Did find: /private/var/mobile/Containers/Bundle/Application/3FC2DC5C-A908-42C4-8508-1320E01E0D5B/testapp.app/Frameworks/libswiftCore.dylib: mmap() errno=1 validating first page of '/private/var/mobile/Containers/Bundle/Application/3FC2DC5C-A908-42C4-8508-1320E01E0D5B/testapp.app/Frameworks/libswiftCore.dylib' (lldb) 

Recibo este error al crear en mi iPhone. Soy capaz de build en el simulador. He rehecho todos mis files de provisión, pero aún no puedo build en mi iPhone. Mi Xcode es así

introduzca la descripción de la imagen aquí

¿Es un problema de marco o un problema de firma? Esto no sucedió en Xcode 6. Gracias.

Tengo este problema antes para revocar accidentalmente mi certificate. Entonces, todos mis proyectos rápidos tienen este problema. Hay dos forms de resolver esto:

Haga clic en Producto -> Limpiar (o CMD-Shift-K)

O limpiando manualmente los files de configuration de Xcode:

 rm -rf "$(getconf DARWIN_USER_CACHE_DIR)/org.llvm.clang/ModuleCache" rm -rf ~/Library/Developer/Xcode/DerivedData rm -rf ~/Library/Caches/com.apple.dt.Xcode 

No tengo ni idea de por qué. Buena suerte, mira si te ayuda.

Busqué mucho en este tema. Hay varios motivos que causan este problema.

Si se enfrenta cuando usted y el código / biblioteca Swift en un proyecto de Objectice C deben probar la Solución 1-2-3

Si enfrenta este problema con un nuevo proyecto de Swift, Solution 4 se adaptará mejor a usted.

Solución 1 :

Reinicie Xcode, luego computadora y iPhone

Solución 2 :

Diríjase a la configuration de compilation del proyecto y configure el Embedded Content Contains Swift indicador de Código Embedded Content Contains Swift en YES

Solución 3:

Vaya a la configuration de compilation del proyecto y añada @executable_path/Frameworks vía_ejecutable @executable_path/Frameworks a la opción Rutas de búsqueda de Runpath

Solución 4:

Si nada de lo anterior funciona, debería hacerlo. Apple parece ser un parche certificate como se menciona en la publicación de AirSign

En los certificates InHouse

 Subject: UID=269J2W3P2L, CN=iPhone Distribution: Company Name, O=Company Name, C=FR 

agregaron un nuevo campo llamado OU

 Subject: UID=269J2W3P2L, CN=iPhone Distribution: Company Name, OU=269J2W3P2L, O=Company Name, C=FR 

por lo que debería recrear el certificate y la provisión

 Xcode->Product->Clean + Xcode Restart 

Después de intentar muchas de las otras soluciones mencionadas, para mi vergüenza eterna, hacer un Xcode-> Producto-> Limpiar y reiniciar Xcode, hizo el truco.

Si reinicia accidentalmente su llavero, esto puede ocurrir debido a la falta de certificates de Apple en el llavero. Seguí la respuesta en esto para resolver mi problema.

Tuve el mismo problema y pude solucionarlo volviendo a download el WWDR (autoridad mundial de certificación de relaciones con desarrolladores de Apple). Descargue desde aquí: http://developer.apple.com/certificationauthority/AppleWWDRCA.cer

Para mí, este problema estaba apareciendo debido al certificate de WWRD: la mina estaba actualizada, pero por alguna razón se configuró para "confiar siempre" en lugar de "usar la configuration pnetworkingeterminada del sistema", lo que aparentemente hace la diferencia.

Eliminar el DerivedData hizo el truco para mí.

Lo hizo a través de Xcode -> Preferences -> Ubicaciones -> hizo clic en la flecha detrás de la ruta DerivedData y eliminó toda la carpeta DerivedData en el Finder.

Ocurrió por mi parte al build una aplicación en la línea de command a través de xcodebuild y xcrun PackageApplication, firmando la aplicación con un perfil de empresa. En nuestros serveres de creación de CI, el certificate se configuró en "Confiar siempre" en el llavero (seleccionar certificate -> Obtener información -> Confianza -> "Usar valor pnetworkingeterminado del sistema" se puede cambiar a "Confiar siempre"). Tuve que volver a configurarlo para "Utilizar el valor pnetworkingeterminado del sistema" para que esto funcione. Inicialmente configuramos esto en "Confiar siempre" para trabajar en torno a los cuadros de dialog de llavero que aparecen después de las actualizaciones de software y las actualizaciones de los certificates.

A riesgo de sembrar más confusión, tuve este problema al actualizar a XC8.

Ninguna de estas sugerencias, ni de ningún otro hilo, la resolvió. Lo que DID funcionó fue eliminar TODO de la fase de compilation "Enlace binary con bibliotecas", la fase de compilation "Dependencias objective" y la configuration general "Marcos vinculados y bibliotecas".

Para su información, estoy usando Carthage y había agregado $(PROJECT_DIR)/Carthage/Build/tvOS a la configuration de compilation FRAMEWORK_SEARCH_PATHS , para poder encontrar mis frameworks.

Para su información 2, estos proyectos y los frameworks, son 100% rápidos y los frameworks están construyendo DEFINES_MODULE = YES .

Yo también tuve este problema, sin embargo, nada de lo que intenté anteriormente y en varias otras publicaciones funcionó … excepto por esto.

Para mí, cambié el identificador del package ya que tenemos una ID de package diferente para la distribución frente al desarrollo.

Mi hardware está permitido en esta disposition y mi count de equipo es válida, pero arrojó el error anterior en algún otro marco.

Resulta que necesitaba eliminar completamente la versión anterior de la aplicación completamente de mi teléfono. Y no solo eliminarlo de la manera estándar.

Solución:

  1. Asegúrese de que el teléfono de destino esté conectado
  2. desde el menu xcode, click [Ventana> Dispositivos]
  3. select el dispositivo de destino en el menu del lado izquierdo.
  4. A la derecha, aparecerá una list de aplicaciones dentro de su dispositivo. Encuentre la aplicación que intenta probar y elimínela.

Evidentemente, al instalar la misma aplicación bajo el mismo equipo bajo una identificación de package diferente, si no está comenzando completamente desde cero, hay algunas references a frameworks que se enturbian.

Espero que esto ayude a alguien.

Acabo de limpiar el proyecto y la Clean Build Folder por el menu alt Product

es probable que no tenga el arco correcto en esa biblioteca, puede hacer una

file /private/var/mobile/Containers/Bundle/Application/3FC2DC5C-A908-42C4-8508-1320E01E0D5B/testapp.app/Frameworks/libswiftCore.dylib

y debería mostrarle el arco que está en esa biblioteca … No estoy seguro de cómo se está enlazando, pero probablemente no sea la forma correcta (si libswiftcore es una biblioteca de fábrica, si es algo de agregar en la biblioteca, entonces probablemente no se compile correctamente)

Citado de Technical Q & A QA1886:

La aplicación Swift se bloquea al tratar de hacer reference a la biblioteca Swift libswiftCore.dylib.

P: ¿Qué puedo hacer con el error de carga de libswiftCore.dylib en la console de mi dispositivo que ocurre cuando bash ejecutar mi aplicación de idioma Swift?

R: Para corregir este problema, deberá firmar su aplicación con los certificates de firma de código con la Unidad organizativa de la materia (OU) establecida en su ID de equipo. Todos los certificates de desarrollador Enterprise y estándar de iOS que se crearon después de que se lanzó iOS 8 tienen el nuevo campo ID de equipo en el lugar adecuado para permitir el funcionamiento de las aplicaciones de idioma Swift.

Por lo general, este error aparece en el logging de la console del dispositivo con un post similar a uno de los siguientes: [….] [deny-mmap] file cartografiado no tiene un identificador de equipo y no es un binary de plataforma: / private / var / mobile / Contenedores / Paquete / Aplicación / 5D8FB2F7-1083-4564-94B2-0CB7DC75C9D1 / YourAppNameHere.app / Frameworks / libswiftCore.dylib

 Dyld Error Message: Library not loaded: @rpath/libswiftCore.dylib Exception Type: EXC_BREAKPOINT (SIGTRAP) Exception Codes: 0x0000000000000001, 0x0000000120021088 Triggenetworking by Thread: 0 Referenced from: /private/var/mobile/Containers/Bundle/Application/C3DCD586-2A40-4C7C-AA2B-64EDAE8339E2/TestApp.app/TestApp Reason: no suitable image found. Did find: /private/var/mobile/Containers/Bundle/Application/C3DCD586-2A40-4C7C-AA2B-64EDAE8339E2/TestApp.app/Frameworks/libswiftCore.dylib: mmap() error 1 at address=0x1001D8000, size=0x00194000 segment=__TEXT in Segment::map() mapping /private/var/mobile/Containers/Bundle/Application/C3DCD586-2A40-4C7C-AA2B-64EDAE8339E2/TestApp.app/Frameworks/libswiftCore.dylib Dyld Version: 353.5 

Los nuevos certificates son necesarios al crear un file y empaquetar su aplicación. Incluso si tiene uno de los nuevos certificates, simplemente renunciar a un file de aplicación Swift existente no funcionará. Si se creó con un certificate anterior a iOS 8, necesitará crear otro file.

Importante: tenga cuidado si necesita revocar y configurar un nuevo certificate Enterprise Distribution. Si usted es un desarrollador interno de la empresa, deberá tener cuidado de no revocar un certificate de distribución que se usó para firmar una aplicación que cualquiera de sus empleados de Enterprise todavía está utilizando, ya que todas las aplicaciones que se firmaron con ese certificate de distribución empresarial dejará de funcionar de inmediato. Lo anterior solo se aplica a los certificates de Enterprise Distribution. Los certificates de desarrollo son seguros para revocarlos para desarrolladores de iOS de empresa / estándar.

Como los muchachos de AirSign afirman que el problema se debe al atributo OU faltante en el campo de asunto del certificate interno.

Asunto: UID = 269J2W3P2L, CN = Distribución iPhone: Nombre de la empresa, OU = 269J2W3P2L, O = Nombre de la empresa, C = FR

Tengo un certificate de desarrollo empresarial, la creación de uno nuevo resolvió el problema.

A continuación, los pasos elaborados con éxito.

1) En la biblioteca dinámica, el nombre de installation tenía que ser "@cargar_path"

2) En el proyecto principal, la ruta de búsqueda de ruta de ejecución debe ser "vía_carga_carga" y "vía_carga_carga / frameworks"

3) Desde la vista de llaveros usados ​​-> muestre los certificates caducados y elimine todo.

4) Se eliminó el certificate de distribución y se reinstaló.

5) Descargó developer.apple.com/certificationauthority/AppleWWDRCA.cer e instaló.

Puede regenerar su certificate y reiniciar su iPhone.

Este trabajo para mí, espero que esto lo ayude.

  1. Eliminar la aplicación del dispositivo
  2. Limpiar el proyecto (CMD + SHIFT + K)
  3. Construir / Ejecutar en el dispositivo

Resuelvo el problema revisando mis llaveros locales. Mantiene login.keychain tiene el certificate correcto

Hace poco me enfrenté a este problema. Probé todas las soluciones posibles, pero nada funcionó. Al final acabo de salir de Xcode, quité los certificates en llavero e instalé todo lo nuevo y reinicié el mac. Afortunadamente funcionó como encanto 🙂

Tuve el mismo problema y pude solucionarlo volviendo a download el WWDR (Apple Worldwide Developer Relations Certification Authority) . Descarga desde aquí :

y configurado para confiar siempre en el llavero. Cambiar a Use System Default

me funciona, espero que esto te ayude

En mi caso, el llavero muestra el certificate como no confiable, para resolver este problema, he configurado las opciones de confianza del certificate como "Siempre confío". Configurar el certificate en "Confiar siempre" fue la causa principal del locking. No pude instalar la aplicación en el dispositivo. Resuelto esto estableciendo la opción de confianza en "Valores pnetworkingeterminados del sistema" en lugar de "Siempre confía". Funcionó para mí.

Usted ve los mismos síntomas si está trabajando en Xamarin Studio y está haciendo reference a una biblioteca portátil para la que necesita hacer el cebo PCL y cambiar el truco. Esto ocurre si el proyecto de reference está desactualizado con respecto a la biblioteca referenceda. Descubrí que había actualizado mi biblioteca común a un marco más nuevo, actualicé mis packages pero no había actualizado mis packages iOS para que coincidan. La actualización de los packages resolvió este error para mí.

Debe establecer el certificate (solo el perfil de certificate y no el de aprovisionamiento) para cada marco dynamic que está vinculando (directa o indirectamente) en su proyecto introduzca la descripción de la imagen aquí

En mi caso, después de eliminar toda la certificación creada por Xcode y downloadla. Deja que xcode 8.1 administre la certificación de la aplicación, ¡funciona bien! Espero que esto pueda ayudar a alguien.

He encontrado este problema SOLO en el simulador. Parece estar relacionado con algunos derechos no válidos en nuestra aplicación, pero el problema no aparece cuando ejecutamos un dispositivo.

Resolví usar estos trucos.

Paso 1:

Vaya a la configuration de compilation del proyecto y añada @ vía_ejecutable / Frameworks a la opción Rutas de búsqueda de Runpath

Paso 2:

Diríjase a la configuration de compilation de destino y agregue @ ruta_actuosa / Frameworks a la opción Rutas de búsqueda de ruta de acceso y a las routes de búsqueda de Framework.

introduzca la descripción de la imagen aquí

Paso 3:

Volver a download el WWDR (Autoridad de Certificación de Relaciones con Desarrolladores de Apple Worldwide), configurado como Usar el Pnetworkingeterminado del Sistema como opción.

Etapa 4:

Eliminar todos los datos derivados utilizando Terminal

rm -rf ~ / Library / Developer / Xcode / DerivedData / *

Paso 5 :

Eliminar todos los certificates y volver a instalarlo en Keychain. Habilité la opción Usar sistema pnetworkingeterminado.

Etapa 6:

Reiniciar Xcode.