xcode cocoa debugging

Xcode Debugger: ¿Por qué solo me muestra ensamblador?



cocoa debugging (3)

Estoy comenzando con el desarrollo de Cocoa en Xcode, haciendo el ejemplo de Hello World. Estoy hasta el paso 6 de la sección " depuración en tiempo de ejecución ", que es

Usando el botón Paso a Paso en la barra de herramientas del depurador, comience a recorrer el código. A medida que se ejecuta cada línea de código, puede examinar el estado del programa. El valor de una variable a veces se dibuja en rojo para indicar que el valor se modificó en el último paso. Tenga en cuenta que el depurador hace una pausa antes de ejecutar la línea indicada. Después de cada pausa, puede agregar puntos de corte adicionales o elegir Depurar> Reiniciar para finalizar la aplicación y comenzar una nueva sesión de depuración.

ahora lo que he estado tirando de mi cabello durante la última hora es el hecho de que este depurador solo me mostrará el código de ensamblaje. Puedo seleccionar manualmente mi archivo de código fuente, pero tan pronto como hago clic en "Paso sobre", vuelvo a la vista de ensamblador. ¡No puedo, por la vida de mí, descubrir cómo desactivar el ensamblador y hacer que me muestre mi código fuente!


De hecho, me di cuenta de esto antes de publicar, pero quería ahorrar otros posibles dolores de cabeza en el futuro, (y también en caso de que me olvide después) ya que no pude encontrar la respuesta al buscar desbordamiento de pila, pero descubrí que soy no solo.

Desde el menú de ejecución, seleccione "Pantalla del depurador"> "Solo fuente" o "Pantalla del depurador"> "Fuente y desensamblaje"


Hay otras dos cosas de las que debe asegurarse:

  1. Que estás viendo una de tus funciones / métodos. Si el marco de pila que estás mirando es una función o método de uno de los marcos, vas a ver el ensamblaje sin importar cómo hayas configurado Xcode.
  2. Que está ejecutando una compilación de depuración. Elimine los símbolos de depuración (como en una compilación de versión), y estará buscando ensamblar incluso para su propio código, sin importar qué.

Sé que este artículo tiene cien años, pero en caso de que alguien se pregunte cómo abordar este problema en las versiones más recientes de Xcode (a diferencia de Xcode 3), encontrará la configuración adecuada etiquetada Mostrar siempre el desensamblaje en Depurar> Flujo de trabajo de depuración en Xcode 6 y arriba. Asegúrese de que la opción NO esté marcada.

En Xcode 5, la opción se etiquetó Mostrar Desensamblaje al depurar en Depurar> Flujo de trabajo de depuración . Asegúrese de que "Mostrar desensamblaje durante la depuración" esté desmarcado.

De vuelta en Xcode 4, se encontró la configuración Mostrar desensamblaje al depurar en Producto> Flujo de trabajo de depuración . De nuevo, asegúrese de que la opción permanezca sin marcar.

Esto me estaba volviendo loco, también.

NOTA: La información anterior sigue siendo válida para Xcode 9+. He aplicado actualizaciones a esta respuesta ya que se han lanzado nuevas versiones de Xcode. Afortunadamente, la opción se ha mantenido sin cambios desde Xcode 6 (hasta ahora).