Pregunta

Tengo Xcode 3.1.2 en OS X 10.5.5. Tengo un proyecto de iPhone que funciona bien, pero el depurador no llegará a ninguno de los puntos de interrupción que he establecido. He intentado todas las correcciones estándar que encuentro en la red:

  1. He desactivado 'Load Symbols Lazily' en las preferencias de Xcode
  2. Mi configuración activa es Debug
  3. El nivel de optimización es 0 en la configuración de compilación
  4. He limpiado todos los objetivos y reconstruido
  5. Uso Build and Debug (en lugar de Build and Run)

Pensé que podría haber modificado inadvertidamente la configuración de mi proyecto. Así que creé un nuevo proyecto y ese tiene el mismo problema.

Espero que me esté perdiendo algo fácil aquí. Mi depurador estaba trabajando hace unos días, pero de repente se ha detenido.


ACTUALIZACIÓN:

Las cosas se están volviendo más extrañas. Aquí hay algunas respuestas a las respuestas

  1. No puedo encontrar las opciones de 'GCC 4.0 - Generación de código' en ninguna parte. He buscado alta y baja en las páginas de información de objetivos y ejecutables. La única opción que veo es seleccionar la versión del compilador, y se selecciona GCC 4.0, pero esa es una sección de una línea sin opciones adicionales.
  2. Acerca de dónde colocar los puntos de interrupción: Mi único punto de interrupción por ahora está en main (), y no se está alcanzando
  3. Estoy iniciando el depurador con Ejecutar - > Comando de depuración (/% Y). Todavía no hay suerte

ACTUALIZACIÓN 2:

  1. Se cambió el SDK base en la configuración de destino a Sim 2.2.1. Se cambió el SDK activo a Sim 2.2.1.
  2. Ahora puedo ver las opciones de generación de código de GCC 4.0 - Se verifican los símbolos de depuración
  3. Todavía no llega a los puntos de ruptura

aquí está el registro de la consola (punto de interrupción establecido en la primera línea de main.m):

[Session started at 2009-03-06 21:29:19 -0600.]
Loading program into debugger…
GNU gdb 6.3.50-20050815 (Apple version gdb-962) (Sat Jul 26 08:14:40 UTC 2008)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-apple-darwin".warning: Unable to read symbols for "/System/Library/Frameworks/UIKit.framework/UIKit" (file not found).
warning: Unable to read symbols from "UIKit" (not yet mapped into memory).
warning: Unable to read symbols for "/System/Library/Frameworks/CoreGraphics.framework/CoreGraphics" (file not found).
warning: Unable to read symbols from "CoreGraphics" (not yet mapped into memory).
Program loaded.
sharedlibrary apply-load-rules all
Attaching to program: `/private/var/root/Library/Application Support/iPhone Simulator/User/Applications/753D12B3-777C-473B-B098-3E0AF6282545/TestApp.app/TestApp', process 577.
Re-enabling shared library breakpoint 1

También está aquí el registro de gdb:

t=0.000852 Tepoch=1236463545.631514
<- (gdb) 
-> 135-gdb-version
#  PBXGDB_MIGDBVersionCommand t=4.308986 Tepoch=1236463549.939648
-> 136-gdb-set auto-raise-load-levels 1
#  PBXGDB_MISetAutoRaiseSymbols t=4.309420 Tepoch=1236463549.940082
-> 139-gdb-set env __CF_USER_TEXT_ENCODING 0x0:0:0
#  PBXGDB_MISetEnvCommand t=4.309702 Tepoch=1236463549.940364
-> 140-gdb-set env USERBREAK 1
#  PBXGDB_MISetEnvCommand t=4.309935 Tepoch=1236463549.940598
-> 141-gdb-set env DYLD_FRAMEWORK_PATH /Projects/TestApp/build/Debug-iphonesimulator
#  PBXGDB_MISetEnvCommand t=4.310175 Tepoch=1236463549.940837
-> 142-gdb-set env Apple_PubSub_Socket_Render /tmp/launch-GqkpX5/Render
#  PBXGDB_MISetEnvCommand t=4.310568 Tepoch=1236463549.941231
-> 143-gdb-set env SECURITYSESSIONID 715cd0
#  PBXGDB_MISetEnvCommand t=4.310803 Tepoch=1236463549.941465
-> 144-gdb-set env DYLD_LIBRARY_PATH /Projects/TestApp/build/Debug-iphonesimulator
#  PBXGDB_MISetEnvCommand t=4.311040 Tepoch=1236463549.941702
-> 145-gdb-set env SSH_AUTH_SOCK /tmp/launch-hRgLzb/Listeners
#  PBXGDB_MISetEnvCommand t=4.311299 Tepoch=1236463549.941961
-> 146-gdb-set env HOME /var/root
#  PBXGDB_MISetEnvCommand t=4.311587 Tepoch=1236463549.942250
-> 147-gdb-set env SHELL /bin/sh
#  PBXGDB_MISetEnvCommand t=4.311818 Tepoch=1236463549.942480
-> 148-gdb-set env DYLD_NO_FIX_PREBINDING YES
#  PBXGDB_MISetEnvCommand t=4.312048 Tepoch=1236463549.942710
-> 149-gdb-set env COMMAND_MODE unix2003
#  PBXGDB_MISetEnvCommand t=4.312281 Tepoch=1236463549.942943
-> 150-gdb-set env DYLD_NEW_LOCAL_SHARED_REGIONS YES
#  PBXGDB_MISetEnvCommand t=4.312546 Tepoch=1236463549.943209
-> 151-gdb-set env SSH_ASKPASS /Developer/Library/PrivateFrameworks/DevToolsInterface.framework/Resources/Xcode SSHPassKey
#  PBXGDB_MISetEnvCommand t=4.312780 Tepoch=1236463549.943443
-> 152-gdb-set env PATH /Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin
#  PBXGDB_MISetEnvCommand t=4.313612 Tepoch=1236463549.944275
-> 153-gdb-set env DISPLAY /tmp/launch-yrv3vV/:0
#  PBXGDB_MISetEnvCommand t=4.313849 Tepoch=1236463549.944512
-> 154-gdb-set env USER root
#  PBXGDB_MISetEnvCommand t=4.314141 Tepoch=1236463549.944803
-> 155-gdb-set env NSUnbufferedIO YES
#  PBXGDB_MISetEnvCommand t=4.314377 Tepoch=1236463549.945039
#  Enqueue seq in Command Q: <PBXGDB_SetupSharedLibrarySequence: 0x9049db0> t=4.314625 Tepoch=1236463549.945288
#  Executing Sequence: <PBXGDB_SetupSharedLibrarySequence: 0x9049db0> t=4.314718 Tepoch=1236463549.945380
-> 157-gdb-set inferior-auto-start-cfm off
#  PBXGDB_MISetLoadCFMInfoCommand t=4.314895 Tepoch=1236463549.945557
-> 156-gdb-set sharedLibrary load-rules dyld ".*Foundation.*" all dyld ".*libobjc.*" all dyld ".*libauto.*" all dyld ".*/usr/lib/dyld.*" all dyld ".*CFDataFormatters.*" all dyld ".*PBGDBIntrospectionSupport.*" all dyld ".*AppKit.*" all dyld ".*libSystem.*" all dyld ".*CarbonDataFormatters.*" all dyld ".*CoreFoundation.*" extern dyld "/System/Library/Frameworks\\\\|/System/Library/PrivateFrameworks\\\\|/usr/lib" extern dyld ".*" extern exec ".*" extern 
#  PBXGDB_MISetSharedLibraryLoadSymbolsCommand t=4.315975 Tepoch=1236463549.946637
-> 137-file-exec-and-symbols "/private/var/root/Library/Application Support/iPhone Simulator/User/Applications/09734C45-F595-4CB9-8707-744E92D66245/TestApp.app/TestApp"
#  PBXGDB_MILoadExecutableCommand t=4.320612 Tepoch=1236463549.951275
#  Enqueue seq in Command Q: <PBXGDB_FixAndContinueIsSupportedSequence: 0x9bdc260> t=4.321476 Tepoch=1236463549.952138
#  Enqueue seq in Command Q: <PBXGDB_NewBreakpointSequence: 0xa516f90> t=4.321941 Tepoch=1236463549.952603
#  Enqueue seq in Command Q: <PBXGDB_AttachControlSequence: 0xa4fceb0> t=4.322157 Tepoch=1236463549.952820
<- ~"GNU gdb 6.3.50-20050815 (Apple version gdb-962) (Sat Jul 26 08:14:40 UTC 2008)\n"
<- ~"Copyright 2004 Free Software Foundation, Inc.\n"
<- ~"GDB is free software, covered by the GNU General Public License, and you are\nwelcome to change it and/or distribute copies of it under certain conditions.\nType \"show copying\" to see the conditions.\nThere is absolutely no warranty for GDB.  Type \"show warranty\" for details.\n"
<- ~"This GDB was configured as \"i386-apple-darwin\"."
<- 135^done,version="6.3.50-20050815 (Apple version gdb-962)",rc_version="962",target="i386-apple-darwin",build-date="Sat Jul 26 08:14:40 UTC 2008",time={wallclock="0.03311",user="0.00081",system="0.00014",start="1236463549.989179",end="1236463550.022291"}
#  processing result t=4.392345 Tepoch=1236463550.023007
<- (gdb) 
<- 136^done,time={wallclock="0.00005",user="0.00005",system="0.00001",start="1236463550.024272",end="1236463550.024325"}
#  processing result t=4.394163 Tepoch=1236463550.024826
<- (gdb) 
<- 139^done,time={wallclock="0.00007",user="0.00005",system="0.00002",start="1236463550.025511",end="1236463550.025581"}
#  processing result t=4.395347 Tepoch=1236463550.026010
<- (gdb) 
<- 140^done,time={wallclock="0.00003",user="0.00003",system="0.00001",start="1236463550.026564",end="1236463550.026597"}
#  processing result t=4.396328 Tepoch=1236463550.026991
<- (gdb) 
<- 141^done,time={wallclock="0.00003",user="0.00003",system="0.00001",start="1236463550.027857",end="1236463550.027890"}
#  processing result t=4.397653 Tepoch=1236463550.028315
<- (gdb) 
<- 142^done,time={wallclock="0.00003",user="0.00003",system="0.00001",start="1236463550.029080",end="1236463550.029113"}
#  processing result t=4.398865 Tepoch=1236463550.029528
<- (gdb) 
<- 143^done,time={wallclock="0.00003",user="0.00003",system="0.00001",start="1236463550.030126",end="1236463550.030159"}
#  processing result t=4.399923 Tepoch=1236463550.030585
<- (gdb) 
<- 144^done,time={wallclock="0.00003",user="0.00003",system="0.00001",start="1236463550.031449",end="1236463550.031482"}
#  processing result t=4.401855 Tepoch=1236463550.032518
<- (gdb) 
<- 145^done,time={wallclock="0.00003",user="0.00003",system="0.00001",start="1236463550.033257",end="1236463550.033291"}
#  processing result t=4.403022 Tepoch=1236463550.033685
<- (gdb) 
<- 146^done,time={wallclock="0.00006",user="0.00003",system="0.00002",start="1236463550.034226",end="1236463550.034287"}
#  processing result t=4.404018 Tepoch=1236463550.034680
<- (gdb) 
<- 147^done,time={wallclock="0.00003",user="0.00003",system="0.00001",start="1236463550.035215",end="1236463550.035247"}
#  processing result t=4.405007 Tepoch=1236463550.035670
<- (gdb) 
<- 148^done,time={wallclock="0.00003",user="0.00003",system="0.00001",start="1236463550.036306",end="1236463550.036340"}
#  processing result t=4.406068 Tepoch=1236463550.036731
<- (gdb) 
<- 149^done,time={wallclock="0.00003",user="0.00003",system="0.00001",start="1236463550.037344",end="1236463550.037377"}
#  processing result t=4.407107 Tepoch=1236463550.037770
<- (gdb) 
<- 150^done,time={wallclock="0.00003",user="0.00003",system="0.00001",start="1236463550.038448",end="1236463550.038483"}
#  processing result t=4.408214 Tepoch=1236463550.038876
<- (gdb) 
<- 151^done,time={wallclock="0.00003",user="0.00003",system="0.00001",start="1236463550.040541",end="1236463550.040576"}
#  processing result t=4.410438 Tepoch=1236463550.041101
<- (gdb) 
<- 152^done,time={wallclock="0.00003",user="0.00003",system="0.00001",start="1236463550.041901",end="1236463550.041933"}
#  processing result t=4.411665 Tepoch=1236463550.042327
<- (gdb) 
<- 153^done,time={wallclock="0.00003",user="0.00003",system="0.00001",start="1236463550.042984",end="1236463550.043016"}
#  processing result t=4.412784 Tepoch=1236463550.043446
<- (gdb) 
<- 154^done,time={wallclock="0.00003",user="0.00002",system="0.00001",start="1236463550.043956",end="1236463550.043988"}
#  processing result t=4.413717 Tepoch=1236463550.044379
<- (gdb) 
<- 155^done,time={wallclock="0.00003",user="0.00003",system="0.00001",start="1236463550.044974",end="1236463550.045007"}
#  processing result t=4.414737 Tepoch=1236463550.045400
<- (gdb) 
<- 157^done,time={wallclock="0.00003",user="0.00003",system="0.00001",start="1236463550.046108",end="1236463550.046141"}
#  processing result t=4.415931 Tepoch=1236463550.046594
<- (gdb) 
<- 156^done,time={wallclock="0.00005",user="0.00005",system="0.00001",start="1236463550.050271",end="1236463550.050324"}
#  processing result t=4.420235 Tepoch=1236463550.050897
-> 158sharedlibrary apply-load-rules all
#  PBXGDB_MISharedLibraryApplyLoadRulesCommand t=4.420386 Tepoch=1236463550.051049
<- (gdb) 
<- &"warning: Unable to read symbols for \"/System/Library/Frameworks/UIKit.framework/UIKit\" (file not found).\n"
<- &"warning: Unable to read symbols from \"UIKit\" (not yet mapped into memory).\n"
<- &"warning: Unable to read symbols for \"/System/Library/Frameworks/CoreGraphics.framework/CoreGraphics\" (file not found).\n"
<- &"warning: Unable to read symbols from \"CoreGraphics\" (not yet mapped into memory).\n"
<- 137^done,time={wallclock="0.34917",user="0.17115",system="0.11409",start="1236463550.052577",end="1236463550.401747"}
#  processing result t=4.771918 Tepoch=1236463550.402580
<- (gdb) 
<- &"sharedlibrary apply-load-rules all\n"
<- 158^done
#  processing result t=4.820019 Tepoch=1236463550.450681
#  didFinish Sequence: <PBXGDB_SetupSharedLibrarySequence: 0x9049db0> t=4.820135 Tepoch=1236463550.450797
#  Executing Sequence: <PBXGDB_FixAndContinueIsSupportedSequence: 0x9bdc260> t=4.820259 Tepoch=1236463550.450921
-> 159-mi-verify-command file-fix-file-is-grooved
#  PBXGDB_MIVerifyCommandCommand t=4.820398 Tepoch=1236463550.451060
<- (gdb) 
<- 159^done,name="file-fix-file-is-grooved",defined="true",implemented="true",time={wallclock="0.00011",user="0.00007",system="0.00001",start="1236463550.451848",end="1236463550.451955"}
#  processing result t=4.821746 Tepoch=1236463550.452409
-> 160-file-fix-file-is-grooved
#  PBXGDB_MIFixAndContinueSupportedCommand t=4.821894 Tepoch=1236463550.452556
<- (gdb) 
<- 160^done,supported="1",details="Yes grooved!",time={wallclock="0.00006",user="0.00005",system="0.00002",start="1236463550.453356",end="1236463550.453417"}
#  processing result t=4.823203 Tepoch=1236463550.453865
#  didFinish Sequence: <PBXGDB_FixAndContinueIsSupportedSequence: 0x9bdc260> t=4.823344 Tepoch=1236463550.454006
#  Executing Sequence: <PBXGDB_NewBreakpointSequence: 0xa516f90> t=4.823433 Tepoch=1236463550.454095
#  Passed verification of state before break create command t=4.823569 Tepoch=1236463550.454231
-> 161-break-insert -l -1 -f  -s "TestApp" "\"main.m:13\""
#  PBXGDB_MICreateFileBreakpointCommand t=4.823679 Tepoch=1236463550.454342
<- (gdb) 
<- =shlib-state-modified,shlib-info=[num="1",name="TestApp",kind="-",dyld-addr="-",reason="exec",requested-state="Y",state="Y",path="/private/var/root/Library/Application Support/iPhone Simulator/User/Applications/09734C45-F595-4CB9-8707-744E92D66245/TestApp.app/TestApp",description="/private/var/root/Library/Application Support/iPhone Simulator/User/Applications/09734C45-F595-4CB9-8707-744E92D66245/TestApp.app/TestApp",loaded_addr="",slide="0x0",prefix="",dsym-objpath="/Projects/TestApp/build/Debug-iphonesimulator/TestApp.app.dSYM/Contents/Resources/DWARF/TestApp"]
<- 161^done,bkpt={number="1",type="breakpoint",disp="keep",enabled="y",addr="0x000028cf",func="main",file="/Projects/TestApp/main.m",line="13",shlib="/private/var/root/Library/Application Support/iPhone Simulator/User/Applications/09734C45-F595-4CB9-8707-744E92D66245/TestApp.app/TestApp",times="0"},time={wallclock="0.15835",user="0.00321",system="0.00184",start="1236463550.455187",end="1236463550.613542"}
#  processing result t=4.996437 Tepoch=1236463550.627100
#  didFinish Sequence: <PBXGDB_NewBreakpointSequence: 0xa516f90> t=4.996599 Tepoch=1236463550.627262
#  Executing Sequence: <PBXGDB_AttachControlSequence: 0xa4fceb0> t=4.996690 Tepoch=1236463550.627352
-> 162-mi-verify-command target-attach
#  PBXGDB_MIVerifyCommandCommand t=4.996824 Tepoch=1236463550.627486
<- (gdb) 
<- 162^done,name="target-attach",defined="true",implemented="true",time={wallclock="0.00007",user="0.00006",system="0.00001",start="1236463550.627975",end="1236463550.628046"}
#  processing result t=4.998137 Tepoch=1236463550.628799
-> 163-target-attach 288
#  PBXGDB_MIAttachCommand t=4.998293 Tepoch=1236463550.628955
<- (gdb) 
<- ~"Attaching to program: `/private/var/root/Library/Application Support/iPhone Simulator/User/Applications/09734C45-F595-4CB9-8707-744E92D66245/TestApp.app/TestApp', process 288.\n"
<- ~"Re-enabling shared library breakpoint 1\n"
<- =shlibs-updated
<- 163^done,thread-id="1",time={wallclock="0.00362",user="0.00151",system="0.00203",start="1236463550.629436",end="1236463550.633055"}
#  processing result t=5.010455 Tepoch=1236463550.641117
#  Enqueue seq in Command Q: <PBXGDB_ThreadListSequence: 0xa4e0520> t=5.011284 Tepoch=1236463550.641946
-> 164-exec-continue
#  PBXGDB_MIContinueExecutableCommand t=5.011420 Tepoch=1236463550.642082
<- (gdb) 
<- 164^running
#  processing result t=5.070065 Tepoch=1236463550.700727
#  didFinish Sequence: <PBXGDB_AttachControlSequence: 0xa4fceb0> t=5.071843 Tepoch=1236463550.702505
<- (gdb) 
¿Fue útil?

Solución

  

No puedo encontrar 'GCC 4.0 - Código   Opciones de generación en cualquier lugar. He   miró hola y bajo tanto en Target como en   Páginas de información ejecutables. La unica opcion   Lo que veo es seleccionar el compilador.   versión, y GCC 4.0 está seleccionado, pero   que es una sección de una línea sin   opciones adicionales.

Eso es un error de Xcode en 3.1.1 y 3.1.2 si el Active SDK no está sincronizado con el SDK base del objetivo. Establezca el SDK base del objetivo en Simulador, asegúrese de que su SDK activo sea Simulador y vuelva a intentarlo.

Si realmente desea que se responda esto, tendrá que publicar más información sobre su proyecto: una captura de pantalla de la configuración de compilación o el texto de la consola del depurador.

ACTUALIZADO: También tenga en cuenta en Xcode > Preferencias > Depuración: texto alternativo http://idisk.mac.com/cdespinosa/Public/GDB%20Log .png

Marque la casilla, ingrese una ruta razonable en el campo de ruta, pruebe su escenario de depuración, luego presente un error en http: / /bugreporter.apple.com con el registro adjunto y una descripción de su escenario, o pregunte a la gente buena por xcode-users@lists.apple.com. El registro de gdb contiene toda la información sobre cómo el depurador está interactuando con su aplicación.

Otros consejos

En las preferencias de Xcode vaya a la sección de depuración y desactive la opción 'Cargar símbolos con pereza'.

Eso me lo arregló hace unos meses cuando me encontré con este problema por primera vez.

Esto es una especie de " está enchufado " responde, pero bueno, a veces ese es el problema: ¿están habilitados los puntos de interrupción? A veces, cuando depuro, me olvido de hacer clic en el botón en la barra de herramientas de depuración que habilita y deshabilita los puntos de interrupción.

La sección GCC 4.0 - Generación de código solo aparece cuando configuras el Active SDK en Dispositivo - iPhone OS 2.x . Imagínate. Desaparecen cuando el Active SDK es el simulador.

Debes cambiar tu Active SDK a Dispositivo, cambiar la configuración y luego volver a cambiar al Simulador. Los ajustes realizados en Dispositivo también deben mantenerse para Simulador. Esto también funciona con por ejemplo. estableciendo un indicador -DDEBUG para el preprocesamiento.

(Actualización: solo tenía la mitad de la razón. Consulte la respuesta aceptada de Chris Espinosa re: este error del SDK. No es que la sección GCC 4.0 aparezca cuando el Active SDK está configurado en "Dispositivo", es que su SDK base y Active SDK debe coincidir para acceder a esta configuración).

Otra sugerencia simple:
¿Los puntos de corte son de color azul claro y azul oscuro?

Xcode le permite desactivar los puntos de interrupción y estos se indican con una flecha azul clara (como si estuviera atenuada).

Intente ejecutar el proyecto presionando Comando-Opción-Y (esto obliga a Xcode a iniciar el programa con el depurador).

Los botones en la barra de menú de Xcode pueden ser un tanto confusos. Si el botón dice "Ejecutar", no ejecuta el programa en el depurador. Si dice "Ir", ejecuta el programa, sin embargo, se construyó por última vez (es decir, versión o depuración). Comando-Opción-Y inicia el programa específicamente en el depurador.

También, asegúrese de que sus puntos de interrupción estén habilitados. Puede hacer clic derecho sobre ellos para comprobar. Además, en la ventana del depurador, debería haber una opción en la barra de herramientas para activar o desactivar puntos de interrupción. Asegúrate de que estén activados.

Esta puede ser una respuesta excepcionalmente obvia, pero podría funcionar. ¿Ha intentado agregar puntos de interrupción en un código que no sea main ()? Por ejemplo, en el método ApplicationDidFinishLaunching del delegado de la aplicación? Sé que DEBE ir primero a main, pero como el código en main no se modifica normalmente para las aplicaciones de iPhone, puede que sea un poco inestable. Vale la pena intentarlo, de todos modos.

También, para encontrar las opciones de generación de código de GCC 4.0, haga clic en el triángulo para abrir el grupo de objetivos y haga clic en el nombre de su aplicación debajo de los objetivos. Haga clic en el botón Información en la parte superior de la ventana de Xcode y obtendrá la configuración de su aplicación. Ve a construir. Asegúrese de que la lista desplegable Mostrar: esté establecida en Todas las configuraciones. Si se desplaza hacia abajo desde allí, debe ser una de las listas que puede editar (después de la Versión y antes de GCC 4.0 - Idioma)

Cuando el programa se está ejecutando, ¿puedes hacer un CTRL-C en la ventana de la Consola (mientras el cursor está ahí)? Si interrumpe el tipo de programa info br que debería proporcionar una lista de los puntos de interrupción activos , entonces la pregunta es: ¿son ellos los que estableció?

Hay dos archivos de configuración gdb que pueden ser buenos para echar un vistazo.

  • /etc/gdb.conf
  

Los míos tienen MD5 (/etc/gdb.conf) = 31b58e1ecf038554faadf777d63e9085

  • ~ / .gdbinit
  

No tengo, ¿tienes uno?

¿Ha verificado que la configuración de su compilación está utilizando su certificado de desarrollo para la firma de código?

Si está utilizando un certificado Ad Hoc, aún se compilará y funcionará bien, pero poco después de iniciar la aplicación, Xcode se separará del dispositivo para que no haya puntos de interrupción. Puede saber rápidamente si se ha separado o no si mira en la parte inferior izquierda de la ventana principal de Xcode después de hacer clic en Generar & amp; Ir: si no está utilizando el certificado de dispositivo de desarrollo real, verá un mensaje que dice algo así como "Código hexadecimal no válido recibido del dispositivo".

Parece que está ejecutando el programa como root , que no parece estar bien ...

En su lista de configuración de compilación, no cubre la más importante:

texto alternativo http://idisk.mac.com/cdespinosa /Public/Generate%20Debug%20Symbols.png

Asegúrese de que Generar símbolos de depuración esté seleccionado para la configuración de depuración, y asegúrese de que la configuración de depuración esté activa cuando construya y depure.

Dos otras cosas para probar:

1) Desmarque Reparar y Continuar. Su registro detallado de gdb indica que puede estar encendido. Asegúrese de que está viendo la configuración de destino y no la configuración del proyecto al confirmar esto.

2) Intenta no ejecutándose como root. No está claro por qué es necesario. Es posible que Xcode ejecutándose como root tenga interacciones con el simulador; Francamente, no usamos esa configuración por lo que no lo sabría.

El registro muestra que todo funciona con bastante normalidad. Usted tiene un binario construido que se está lanzando en el simulador; Es la arquitectura correcta y bien formada; tienes símbolos de depuración; tiene un punto de interrupción y el punto de interrupción se está configurando. Estamos tomando su palabra (ya que no vemos su fuente) de que el punto de interrupción está realmente en una línea de código que se está ejecutando.

  

Si está utilizando un certificado Ad Hoc, aún se compilará y funcionará bien, pero poco después   Al iniciar la aplicación, Xcode se separará del dispositivo, por lo que nunca habrá puntos de interrupción.

Esto me ayudó.

Tengo que preguntar, ya que tuve el mismo problema, ¿es este un mac "real"? Existe este problema exacto con el vudú hacintosh kernal. Si está utilizando el kernal vudú, arranque con std_dyld = 1 y todo estará bien

Esto realmente funciona en el núcleo vudú, arrancando con std_dyld = 1 hace que Xcode se detenga en el punto de interrupción. Increíble consejo, de verdad. Muchas gracias a ti, John, eres un tipo de salvavidas! Utilicé OSX86Tools para agregar este indicador de arranque automáticamente. Polo

Intenté casi todo en este hilo y reiniciar el dispositivo resolvió mi problema.

Acabo de tener el mismo problema. Todavía no tengo una solución real, pero me di cuenta de que, en mi caso, depende del dispositivo. El error solo ocurre en mi iPod Touch 4G. Cuando cambio a mi iPhone 3G, todo funciona bien y los puntos de interrupción vuelven a funcionar.

No sé si esto tiene algo que ver con el problema, pero es posible que el iPod4 tenga un problema debido al iOS 5 beta 2. instalado. Generalmente, cuando encuentro un error en iOS 5, está bien simplemente reiniciar el dispositivo. . Sin embargo ... reiniciar el iPod4 no ayudó en mi caso ...

Solución:

Este problema me molestó por algunas semanas, pero finalmente encontré una solución para mi caso:

  1. Asegúrese de que el SDK de su Mac sea el mismo (o más nuevo) que la versión de iOS en su dispositivo.
  2. Reinicie el dispositivo mientras está conectado a través de USB y Xcode se está ejecutando.

Tuve una situación similar ... después de 6 horas de depuración y comparación de archivos de proyecto, finalmente funcionó. La situación era que tenía un proyecto de 2 años originalmente realizado en Xcode 3.1 días. Intenté ejecutarlo en Xcode 4.5.1 con puntos de interrupción y nunca funcionó.

Esto es lo que hice para arreglarlo ...

1) En el proyecto > Configuración de compilación ... Buscar depuración. 2) Construir solo Arquitectura activa > Cambiar depuración a Sí 3) Generar símbolos de depuración > Sí 4) Macros de preprocesador > Debug = 1

Se ejecuta bien ahora.

Apple debería mejorar realmente la experiencia general de Xcode. Entiendo que es gratis (oye, obtienes lo que pagas), pero aún así, los errores son casi insultantes para los desarrolladores.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top