ios - mac - Xcode no se puede ejecutar en el destino seleccionado
xcode mac (30)
¡Tienes que encontrar en el "Monitor de actividad" el proceso de Xcode y matarlo! ¡Acabo de hacerlo para resolver un problema similar!
Estaba ejecutando mi aplicación esta mañana y ahora, de repente, aparece el siguiente error cuando intento ejecutar el simulador de iPhone 5.1.
No se puede ejecutar en el destino seleccionado
El destino no es compatible con la arquitectura para la cual se construye el software seleccionado. Cambie a un destino que admita esa arquitectura para ejecutar el software seleccionado.
He eliminado los esquemas pero todavía no hay solución.
Estoy usando Mountain Lion. Estoy usando xCode 4.4 (actualizado recientemente a Mountain Lion y xCode 4.4)
ACTUALIZACIÓN 1: Aquí está la vista de mi configuración de compilación:
ACTUALIZACIÓN: Aquí está el error real que impide que se ejecute.
A juzgar por las respuestas, este tipo de error tiene muchas fuentes potenciales, por lo que aquí está mi propia versión del error (la cual es sencillamente descuidada):
- La configuración de compilación del proyecto XCode se puede establecer en dos niveles: nivel de proyecto y nivel objetivo. Para aquellos menos familiares, el nivel de destino es donde tiene su aplicación ejecutable y, a menudo, otros elementos como una compilación de biblioteca dinámica.
- En la sección Vinculación de Configuración de compilación hay una opción para Tipo de Mach-O, donde puede configurar Ejecutable, Biblioteca dinámica, Biblioteca estática, etc.
- Estaba teniendo problemas para preparar una biblioteca dinámica, estaba escaneando las configuraciones de compilación para el proyecto y vi que Mach-O estaba en blanco. Así que me puse a la biblioteca dinámica. Luego continué y revisé algunas cosas más y olvidé que había hecho este cambio. Pero no me di cuenta de que estaba en el nivel general del proyecto, no en el nivel objetivo de la biblioteca dinámica real. Esto cambió todas las configuraciones de Mach-O de destino a la biblioteca dinámica.
- Y, por supuesto, al objetivo ejecutable no le gustaba que lo trataran como una biblioteca dinámica, y recibí el mensaje de error del OP.
- Establecer el ejecutable de nuevo en Mach-O ejecutable en su configuración de compilación de nivel objetivo solucionó todo. Resulta molesto que la configuración a nivel de proyecto aún dijera una biblioteca dinámica, pero con la configuración correcta a nivel de destino, todo funcionó bien.
Qué tontería, lo sé, pero como algunas de las soluciones más drásticas enumeradas anteriormente se habrían resuelto indirectamente para este error, ¡pensé que lo compartiría en caso de que alguien más hubiera cometido el mismo error!
Acabo de encontrar este error en Xcode 4.5.1, y el error desapareció después de quitar todos los caracteres no alfa de la configuración de construcción del Product Name
del Product Name
.
Comprometiendo mis archivos en SVN y revisando el proyecto en un nuevo directorio me lo arreglé.
Creo que este puede ser un error actual no listado con Xcode 4.4+. Tengo / tuve el mismo problema con mi proyecto. Eliminé todas las versiones de Xcode y reinicié con 4.4, abrí mi proyecto y volví a tener el error.
Entonces comencé un nuevo proyecto con una plantilla con un nombre diferente. No tenía el problema.
Luego cambié el nombre de mi proyecto anterior, comencé un nuevo proyecto vacío con el mismo nombre y construí / ejecuté y obtuve el error nuevamente. Este nuevo proyecto no era más que un controlador de vista que no hacía nada. Debería haber conseguido una pantalla en blanco pero tuve el mismo error que tú.
Frustrado, cerré el día y volví a ejecutar el antiguo proyecto, que funcionó. No había cambiado nada. Actualmente tengo el error otra vez y ni reinicio ni reinicio de Xcode lo soluciona.
Entonces, en resumen, un proyecto no puede tener absolutamente ningún cambio realizado, a veces se genera y se ejecuta bien, a veces se obtiene este error. Para el registro no recibí este error al ejecutar Xcode 4.3.
Mi problema no apareció hasta que actualicé a Mountain Lion y Xcode 4.4, que sucedió el mismo día. Ahora no puedo volver a una configuración 100% viable.
Creo que muchas de estas soluciones obligan a una reconstrucción completa, que es lo que resolvió esto por mí.
Hice Producto => Limpio, y el problema desapareció.
Después de medio día de experimentación, creo que esto significa que el depurador no puede encontrar su ejecutable para iniciar. Creo que esta es una distinción importante de las respuestas anteriores porque es una causa subyacente, que puede tener muchos síntomas. En mi caso no pudo reconciliar las aplicaciones Info.plist para una compilación personalizada donde estábamos copiando el plist para la compilación. Cambié la configuración de compilación a Alt-Info.plist para AltDebug y eso lo arregló. También significaba no más copia.
Su causa subyacente podría ser diferente, por lo que la conclusión clave es pensar por qué Xcode podría no ser capaz de encontrar su aplicación creada.
Elimine Info.plist de la fase de compilación del recurso Copiar paquete. ¡Eso me funcionó!
En mi caso, el problema ocurre después de eliminar toda la carpeta de Recursos, copiar la carpeta de Recursos de otro proyecto o el anterior sobre el actual y luego agregar nuevamente esa carpeta.
Resuelvo el problema con la ayuda de la herramienta Analizar: después de analizar, me entusiasma la información de la lista en "Copiar los recursos del paquete".
Simplemente vaya a Copiar recurso de paquete (en la pestaña Frase de construcción) borre Info.plist, luego reinicie Xcode, limpie y genere. Mi proyecto ha vuelto a la normalidad.
Espero que ayuden a alguien :)
Estaba enfrentando el mismo problema con mi proyecto. Aquí hay una breve explicación de la situación y mi resolución. Esto puede o no funcionar en su caso.
Yo trabajo en un lugar que tiene varios proyectos de iOS en marcha. Recientemente tuve mi actualización del sistema a Mac OSX 10.8 y Xcode 4.4.1. Estaba trabajando en un proyecto que se construyó originalmente en Xcode 4.1 para iOS 4. Como Xcode tenía simuladores de iOS 4 hasta 4.3, el proyecto se desarrolló y funcionó bien en todos los simuladores. Sin embargo, en Xcode 4.4.1 no encontré simuladores de iOS 4 y tampoco hay una forma fácil de instalarlos, por lo que recibí el error "No se puede ejecutar en el destino seleccionado". Así es como tengo mi proyecto para ejecutar.
Verifique en
Build Settings > Architectures
y configure Arquitecturas enStandard (armv7)
o${ARCHS_STANDARD_32_BIT}
para todos sus perfiles.Establecer
Base SDK
en elLatest iOS(<ios version #>)
5.1 en mi caso.Establezca
Build Active Architecture Only
enNO
para todos los perfiles.Establecer
Valid Architectures
enarmv6 armv7
para todos los perfiles. Es posible que tengas que agregar cualquiera de las opciones que ya esté disponible.Establecer el
iOS Deployment Target
deiOS 5.1
eniOS 5.1
(en mi caso).Asegúrese de tener el mismo objetivo en
Deployment Target
en la pestañaSummary
de su proyecto.
Limpia y corre y cruza los dedos !!
He encontrado este problema con la versión de Xcode 4.4. Y finalmente lo resolví de esta manera:
Encuentre el "Info.plist" en su proyecto, luego deseleccione la membresía de destino más en la vista lateral derecha de la ventana, funciona para mí.
Intenté todo lo mencionado aquí. Nada funcionó. Parece que de alguna manera he importado el Info.plist dos veces. Para solucionarlo, seleccioné el proyecto y presioné el botón "Validar configuración". Después me funciona.
Intenta renombrar tu proyecto. Resolví de esta manera.
La forma en que resolví este error fue mediante la adición de una función ficticia a mi proyecto. Mi problema era que mi aplicación no tenía un código propio, solo un código vinculado .
Tengo una situación inusual con dos proyectos: un padre "App" y un hijo "Engine". Todo el código compilable está en el niño y el padre simplemente se vincula con el niño, copiando una tonelada de recursos específicos de la aplicación en el proyecto.
Aparentemente esto entristece a Xcode, lo que resulta en el error anterior.
Mi solución es agregar esta función / archivo C al proyecto de la aplicación:
int workaround_for_xcode_reporting_cannot_run_on_selected_destination(){return 0;}
Mire las configuraciones de construcción del proyecto y de destino, en esas Arquitecturas, y vea si algo ha cambiado. Al pasar del Xcode 3 al 4 por primera vez, se utiliza para hacer estragos en el caos, dando el mismo error, y al final tuvo que agregar i386 a la línea "Arquitecturas válidas". Acabo de ver mi gran proyecto iniciado en Xcode 4.1, y no muestra nada sobre i386, etc., pero tengo otros proyectos más nuevos en los que aparece esta cosa en gris en esa línea $ (ARCHS_STANDARD_32_BIT).
EDITAR: Tomé un cambio en esto con un amigo gurú. Ninguno de nosotros puede encontrar un enlace a i386 en nuestros proyectos: Xcode está usando algo de magia. Dicho esto, obtuve un impacto de i386 en una lista binaria dentro del proyecto, lo que me lleva a otra sugerencia.
En sus configuraciones de compilación, asegúrese de que TODAS las "Arquitecturas" sean $ (ARCHS_STANDARD_32_BIT).
Si eso no funciona, le sugerimos que mire las líneas de compilación y ld de su compilación cuando seleccione Simulador de iPhone 5.1 en el menú de esquema, para ver si de hecho es su i386.
Otra idea: mueva todos sus esquemas y configuraciones de usuario a una carpeta de guardado en algún lugar (con el proyecto cerrado), luego vuelva a abrir y vuelva a crear un esquema. Ahora inténtalo de nuevo. No hay referencia a i386 en ninguno de mis archivos project.pbxproj, por lo que nuestra sospecha es que esto está relacionado de alguna manera con la configuración del esquema para el dispositivo de destino.
¡Buena suerte!
Otra solución alternativa: después de probar casi todo en la lista anterior, solucioné esto advirtiendo que no se podía encontrar la ruta TestFlightSDK1. Para hacerlo, eliminé la ruta relevante de las Rutas de búsqueda de encabezado (Configuraciones de compilación> Rutas de búsqueda) y eliminé el TestFlightSDK, y ahora las cosas funcionan bien.
Para mí esto funcionó: - Verifique que todas las referencias de sus productos sean consistentes en la configuración y en las listas. También verifique que el nombre del producto no contenga ningún ESPACIO u otros caracteres "ilegales".
Puedes seguir los pasos:
- Salir de Xcode y simulador de iPhone
- Desenchufe sus dispositivos
- Ir a
/Users/your_usr_name/Library/Developer/Xcode/DerivedData/
- Eliminar todos los datos en esta carpeta
- Vuelve a iniciar Xcode y ejecuta tu proyecto.
Espero que esto resuelva su problema.
Resolví cambiando tanto en la configuración del proyecto como en la configuración de destino la clave "Variantes de compilación" de "armv7" a "normal"
Su archivo Info.plist duplicado solo usa 1 archivo Info.plist en archivos y luego reinicia xcode.
También es posible que desee comprobar si el proyecto utiliza un compilador compatible en la configuración del proyecto
Te alegrará saber que este problema tiene una solución muy simple. Seleccione Info.plist en el árbol del navegador de su proyecto y asegúrese de que no esté asignado a un destino. He confirmado que esta es la solución correcta. Si compila para iOS 6 o una versión anterior, es posible que también deba agregar armv6 a las arquitecturas compatibles
Tengo este problema después de eliminar accidentalmente la carpeta de Recursos, cuando la agregué nuevamente al proyecto, ¡Bam!
¡También estoy corriendo Mountain Lion y XCode 4.4!
tratando de averiguar qué está causando esto, pero parece que se reproduce cuando borra y luego agrega el archivo info.plist. ¿Alguien puede confirmar eso?
Tuve el mismo problema después de que pasaran dos cosas:
- Me actualicé a Facebook SDK 3.1
- Actualicé mi OSX (con una actualización de versión menor)
La única solución que funcionó de mi parte fue agregar armv7s (¡¡cuidado con la "s" al final!) Como se sugirió aquí: https://.com/a/12540654/531527
Tuve este problema después de actualizar a Mountain Lion y XCode 4.4.1 para un proyecto OSX. Para resolverlo, tuve que actualizar mi destino de implementación a 10.5 o superior; Se estableció en 10.4 y superior.
Tuve este problema después de actualizar de Facebook SDK 3.1 a Facebook SDK 3.1.1. Mi culpa, supongo.
Dentro de la carpeta de "recursos", ahora hay un info.plist totalmente inútil pero peligroso que, si se importa, puede romper su archivo de proyecto. No sé por qué lo incluyeron, pero creo que pocos de nosotros cometimos el mismo error recientemente.
Tuve esto desde el principio y parece que es un problema que el emulador no puede manejar tarjetas virtuales. Lamentablemente terminé usando mi teléfono Android conectado a través de USB.
Yo estaba corriendo en este mismo problema. En mi caso, parecía ser que había cambiado el Nombre del paquete para mi proyecto de objetivos múltiples en lugar del Nombre del producto. Una vez que corregí eso, edité el Nombre del proyecto correctamente y luego configuré el Nombre del paquete de nuevo a $ {PRODUCT_NAME} que se ejecutaría nuevamente en el simulador.
Puede que esta no sea la respuesta para todos, pero parece que los errores de nombres de productos (caracteres especiales, espacios, etc.) contribuyen a muchos, y eso fue lo que me llevó a revisar el cambio de nombre que tenía.
Yo restauro los datos de la máquina del tiempo. Tenga en cuenta que estos son exactamente los mismos datos que se almacenaron hace tan solo una hora. El problema comenzó ayer. Así que deben ser los mismos datos EXACTOS.
Sin embargo, funciona.
además de eliminar todos los archivos en este directorio Users / your_usr_name / Library / Developer / Xcode / DerivedData /
reinicié mi mac y funcionó bien (reiniciando xcode y el simulador no me lo cortó)