iphone shell ios6 xcode4.5 build-error

cómo solucionar el problema "Error de Command/bin/sh con el código de salida 1" en iphone



shell ios6 (17)

Usé una biblioteca estática de cacao 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?


¡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 forma, si hay un problema con el comando, no detendrá tu construcción de xcode

en mi caso, solo ejecutaba un comando para desinstalar mi copia anterior de la aplicación de un iphone conectado, por lo que podría dar un error si el iPhone no está allí. Para resolverlo:

$ mobiledevice uninstall_app com.my.app 2>/dev/null


¿Agregaste la biblioteca .a al proyecto xcode? (proyecto -> fases de construcción -> Enlace binario con bibliotecas -> haga clic en ''+'' -> haga clic en ''agregar otro'' -> elija su biblioteca)

Y tal vez la biblioteca no es compatible con el simulador, ¿trataste de compilar para iDevice (no simulador)?

(Ya he luchado con el segundo problema, obtuve una biblioteca que no funcionaba con el simulador pero con un dispositivo real que compila ...)


Eliminar "Datos derivados" funcionó para mí.

En Xcode, vaya a Archivo> Configuración del área de trabajo> Haga clic en la flecha al lado de la ruta del archivo de datos derivados> mueva la carpeta "Datos derivados" a la papelera.


En Mi caso, había espacio en la ruta que estaba fallando en el script. Si está usando variables como $PROJECT_DIR o $TARGET_BUILD_DIR , reemplácelas "$PROJECT_DIR" o "$TARGET_BUILD_DIR" respectivamente. "$TARGET_BUILD_DIR" agregar las comillas, mi script se ejecutó correctamente.


Enumeraré las cosas que hice que no funcionaron para mí y finalmente lo hice

En primer lugar, la respuesta aceptada de Run script solo cuando la instalación no funcionaba.

Eliminar datos derivados no funcionó.

¿Qué funcionó?

  1. Agregué una nueva fase de compilación en Build Fhases

  2. Nueva fase de copia de archivos

  3. Arrastra y suelta el marco elegido en el destino de colocación

  4. Establezca el ''Destino'' en Frameworks

Crédito debido a la publicación de Kevin Le''s Medium


Hice todo lo anterior y pasé una hora sobre el tema.

Intenté todo lo anterior además de reiniciar Xcode.

Finalmente, reinicié la computadora y todo funciona normalmente otra vez!


Limpiar la carpeta de compilación (Cmd + Shift + Alt + K) funcionó para mí


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 -> Limpio


Para aquellos que no desean desmarcar esa opción (usando cocoapods, por ejemplo), el problema podría ser con el certificado / clave.

Xcode (o cualquier herramienta que esté utilizando, como una herramienta de línea de comandos) debe poder usar el certificado / clave del llavero. Para esto, abra el llavero, ubique el certificado que desea usar (generalmente en el llavero de login de login , My Certificates ), haga clic derecho en la tecla, seleccione Get Info , haga clic en Access Control pestaña Access Control y agregue la aplicación a la lista.

Si esto no funciona, intente desbloquear el llavero.

Se puede seleccionar otra opción Permitir que todas las aplicaciones accedan a este elemento en lugar de aplicaciones específicas o mover el certificado / clave a System keychain que se comparte entre todas las cuentas de usuario de esa Mac.

También verifique que el certificado no esté vencido.


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 cuando extraje el código del árbol de fuentes. Lo cambié de nuevo y cambié el número de compilación de 6 a 7 y funcionó bien.


Para mí, mi certificado ha expirado. He creado un nuevo certificado.


Parece que está ejecutando un script de shell y no puede encontrar su archivo específico. Mire Target -> Build-Phases -> RunScript si está ejecutando un script.

Puede verificar si un script se está ejecutando en su salida de compilación (en el panel de navegación). Si su script hace algo mal, la fase de compilación se detendrá.


Retire todos los pods e instálelos de nuevo.

Pasos:

  1. comentar todos los pods y ejecutar la pod install
  2. elimine todos los pods y ejecute la pod install

Traté de reiniciar Xcode (7) y nada (la has intentado apagar y encender nuevamente el desarrollo de iOS para mí :-)). Luego intenté reiniciar mi caja y funcionó.

En mi caso, la secuencia de comandos estaba fallando al copiar un archivo de una ubicación a otra. Creo que podría haber estado relacionado con Finder atornillado con derechos de escritura sobre ciertas carpetas.


Tuve el mismo problema lo arreglé. Use los siguientes pasos para resolver el problema en Xcode 6.4.

  1. Haga clic en Mostrar navegador de proyectos en la ventana del Navegador
  2. Ahora seleccione el proyecto inmediatamente debajo de la ventana del navegador
  3. Seleccionar objetivos
  4. Seleccione la pestaña Crear fases
  5. Opción desplegable Abrir secuencia de comandos de ejecución
  6. Seleccione Ejecutar script solo cuando instale checkbox

Ahora, limpie su proyecto (cmd + shift + k) y construya su proyecto.


Tuve este problema porque negué el acceso al llavero y para resolverlo debes abrir el llavero. Luego, haz clic en el candado en la parte superior derecha de la pantalla para volver a cerrarlo, luego de eso puedes archivar y funcionará


Haga clic en la casilla de verificación Ejecutar si no está seleccionado.