Usé una biblioteca estática de cocoa en mi aplicación. Cuando compilo mi biblioteca, recibí el siguiente error:
Shell Script invocation error:can't open input file:
/Users/sijuthomas/Library/Developer/Xcode/DerivedData/SCXML2-
bbttehupryhijphhjdiemcytkvgy/Build/Products/Debug-iphonesimulator/
libSCXMLParser.a (No such file or directory)
Command /bin/sh failed with exit code 1
¿Cómo puedo arreglar esto?
Tuve este problema porque denegué el acceso al llavero y para resolverlo necesitas abrir el llavero, luego haz clic en el candado en la parte superior derecha de la pantalla para bloquearlo nuevamente, luego puedes archivarlo y funcionará
fuente
Eliminar "Datos derivados" funcionó para mí.
En Xcode, vaya a Archivo> Configuración del espacio de trabajo> Haga clic en la flecha junto a la ruta del archivo de datos derivados> mueva la carpeta "Datos derivados" a la papelera.
fuente
Parece que está ejecutando un script de shell y no puede encontrar su archivo específico. Mirar
Target -> Build-Phases -> RunScript
si está ejecutando un script.Puede verificar si se está ejecutando un script en la salida de su compilación (en el panel de navegación). Si su script hace algo mal, la fase de construcción se detendrá.
fuente
Tuve el mismo problema que lo solucioné. Siga los pasos a continuación para resolver el problema en Xcode 6.4.
Ahora, limpie su proyecto (cmd + shift + k) y construya su proyecto.
fuente
Limpiar la carpeta de compilación (Cmd + Shift + Alt + K) funcionó para mí
fuente
1) Elimine la carpeta del pod y el archivo .xcworkspace 2) Abra la carpeta en el terminal 3) Escriba "pod install"
fuente
¿Agregó la biblioteca .a al proyecto xcode? (proyecto -> fases de construcción -> Vincular binarios con bibliotecas -> haga clic en '+' -> haga clic en 'agregar otro' -> elija su biblioteca)
Y tal vez la biblioteca no sea compatible con el simulador, ¿intentó compilar para iDevice (no para el simulador)?
(Ya luché con el segundo problema, obtuve una biblioteca que no funcionaba con el simulador pero con un dispositivo real que compila ...)
fuente
Para mí, mi certificado está vencido. He creado un nuevo certificado.
fuente
Intenté reiniciar Xcode (7) y nada ( has intentado apagarlo y encenderlo de nuevo en el desarrollo de iOS para mí :-)). Luego lo intenté reiniciando mi caja y funcionó.
En mi caso, el script fallaba al copiar un archivo de una ubicación a otra. Creo que podría haber estado relacionado con Finder con los derechos de escritura sobre ciertas carpetas.
fuente
Para mí, este error se produjo porque cambié el número de versión de 1 a 1.0 y el número de compilación de 6 a 1.1 mientras sacaba el código del árbol fuente. Lo cambié de nuevo y cambié el número de compilación de 6 a 7 y funcionó bien.
fuente
En mi caso, había un espacio en la ruta que fallaba en el script.Si está utilizando variables como
$PROJECT_DIR
o$TARGET_BUILD_DIR
reemplácelas"$PROJECT_DIR"
o"$TARGET_BUILD_DIR"
respectivamente.Después de agregar comillas, mi script se ejecutó correctamente.fuente
¡simplemente coloque su script en un archivo y ejecute ese archivo con 2> / dev / null al final de la línea de comando!
De esta manera, si hay algún problema con el comando, no detendrá la compilación de xcode.
en mi caso, solo estaba ejecutando un comando para desinstalar mi copia anterior de la aplicación desde un iphone conectado, por lo que podría dar un error si el iphone no está allí. Para solucionarlo:
PS
mobiledevice uninstall_app com.my.app 2>/dev/null
fuente
Lo único que funcionó para mí:
1) Eliminar datos derivados con CleanMyMac: System Junk -> Xcode Junk -> Xcode Derived Data
Eliminar datos derivados con CleanMyMac
2) Luego, en Xcode: Producto -> Limpiar
fuente
Hice todo lo anterior y dediqué una hora al tema.
Probé todo lo anterior y reinicié Xcode.
Finalmente, reinicié la computadora y todo volvió a funcionar normalmente.
fuente
Enumeraré las cosas que hice que no funcionaron para mí y finalmente lo que sí
Primero, la respuesta aceptada de Ejecutar script solo cuando la instalación no funcionó.
La eliminación de datos derivados no funcionó.
Qué funcionó:
Agregué una nueva fase de construcción en Build Phases
Nueva fase de copia de archivos
Arrastre y suelte el marco elegido en el destino de la gota
Establecer el 'Destino' a Frameworks
Crédito debido a la publicación mediana de Kevin Le
fuente
Para aquellos que no quieran desmarcar esa opción (usando cocoapods, por ejemplo), el problema podría estar en el certificado / clave.
Xcode (o cualquier herramienta que esté usando, como una herramienta de línea de comando) necesita poder usar el certificado / clave del llavero. Para esto abra el llavero, ubique el certificado que desea usar (generalmente en el
login
llaveroMy Certificates
), haga clic derecho en la clave, seleccioneGet Info
, haga clic en laAccess Control
pestaña y agregue la aplicación a la lista.Si esto no funciona, intente desbloquear el llavero.
Otra opción puede ser seleccionar Permitir que todas las aplicaciones accedan a este elemento en lugar de aplicaciones específicas y / o mover el certificado / clave al
System
llavero que se comparte entre todas las cuentas de usuario en esa Mac.También verifique que el certificado no esté vencido.
fuente
1) opción:
2) opción: actualización de pod, datos de derivación limpia,
fuente
En mi caso, uno de los guiones (relacionado con
SwiftGen
) estaba fallando durante la compilación.Solucioné el problema quitando el
Pods
y luego actualizándolo nuevamente.Pods
directorio o utilicepod deintegrate
pod install
opod update
PD: Es posible que su dependencia sea global y no esté en pods. En ese caso, también puede intentar reinstalar esa dependencia.
fuente
LEA ESTO SI UTILIZA Crashlytics Y TIENE ESTE PROBLEMA ...
Estaba teniendo el mismo problema que el anterior
Command /bin/sh failed with exit code 1
más específicamente[31merror: Could not fetch upload-symbols settings: An unknown error occurred fetching settings.[0m
La primera solución (habilitar el script de ejecución solo durante la instalación) me permitió compilar mi objetivo en el simulador, pero no pude archivar mi compilación.
Resolví este problema de archivo habilitando Crashlytics en firebase. Todavía estoy acostumbrado a Fabric, donde Crashlytics se habilita automáticamente. Una vez que habilité Crashlytics en la consola de base de fuego para el correspondiente GoogleService-Info.plist, pude archivar sin este error.
fuente
Retire todas las cápsulas e instálelas de nuevo.
Pasos:
pod install
pod install
fuente