Подтвердить что ты не робот

IPhone Dev: отладчик Xcode не останавливается на контрольных точках

У меня Xcode 3.1.2 на OS X 10.5.5. У меня есть проект iPhone, который строит отлично, но отладчик не попадет ни в одну из контрольных точек, которые я установил. Я пробовал все стандартные исправления, которые я нашел в сети:

  • Я отключил "Load Symbols Lazily" в настройках Xcode
  • Моя активная конфигурация - Debug
  • Уровень оптимизации равен 0 в настройках сборки
  • Я очистил все цели и перестроил
  • Я использую Build и Debug (в отличие от Build и Run)

Я думал, что мог бы случайно изменить настройки моего проекта. Поэтому я создал новый проект и у него одна и та же проблема.

Я надеюсь, что мне здесь что-то не хватает. Мой отладчик работал всего несколько дней назад, но внезапно он остановился.


UPDATE:

Вещи просто становятся незнакомыми. Вот несколько ответов на ответы

  • Я не могу найти опции "GCC 4.0 - Code Generation" в любом месте. Я просмотрел привет и неторопливо на страницах "Цель" и "Исполняемая информация". Единственный вариант, который я вижу, - это выбрать версию компилятора и выбрать GCC 4.0, но это однострочный раздел без дополнительных параметров.
  • О том, где поставить точки останова: Моя единственная точка останова на данный момент находится в main(), и она не попадает
  • Я начинаю отладчик с помощью команды Run → Debug (/% Y). Еще не повезло.

ОБНОВЛЕНИЕ 2:

  • Изменен базовый SDK в целевых настройках для Sim 2.2.1. Изменен активный SDK для Sim 2.2.1.
  • Теперь я вижу опции генерации кода GCC 4.0 - отмечены символы отладки
  • Все еще не попадает на контрольные точки

здесь находится журнал консоли (точка останова, установленная в первой строке 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

Также здесь находится журнал 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) 
4b9b3361

Ответ 1

Я не могу найти "GCC 4.0 - Код Generation 'в любом месте. Я посмотрел привет и низкий уровень как в Target, так и в Исполняемые информационные страницы. Единственный вариант Я вижу, что нужно выбрать компилятор версии и GCC 4.0, но это однострочный раздел без дополнительные параметры.

Это ошибка Xcode в 3.1.1 и 3.1.2, если Active SDK не синхронизирован с целевым базовым SDK. Установите SDK Target Base SDK в Simulator, убедитесь, что ваш активный SDK является Simulator и повторите попытку.

Если вы действительно хотите, чтобы это ответили, вам нужно будет опубликовать дополнительную информацию о вашем проекте: снимок экрана настроек сборки или текст из консоли отладчика.

ОБНОВЛЕНО: Также обратите внимание на Xcode > Настройки > Отладка: alt text http://idisk.mac.com/cdespinosa/Public/GDB%20Log.png

Установите флажок, введите разумный путь в поле пути, попробуйте сценарий отладки, а затем укажите ошибку в http://bugreporter.apple.com с помощью войдите в систему и описание вашего сценария, или попросите хороших людей на [email protected] Журнал gdb содержит всю информацию о том, как отладчик взаимодействует с вашим приложением.

Ответ 2

В настройках Xcode перейдите в раздел отладки и выключите "Load символы лениво".

Это исправлено для меня несколько месяцев назад, когда я впервые столкнулся с этой проблемой.

Ответ 3

Еще одно простое предложение:
Являются ли контрольные точки светло-голубыми?

Xcode позволяет деактивировать контрольные точки, и они обозначаются голубыми стрелками (например, они были затемнены).

Ответ 4

Раздел GCC 4.0 - Code Generation появляется только при установке активного SDK на устройство - iPhone OS 2.x. Идите фигуру. Они исчезают, когда активным SDK является симулятор.

Вам следует изменить Активный SDK на устройство, изменить настройки, а затем вернуться к Simulator. Настройки, сделанные в разделе "Устройство", также должны удерживаться для симулятора. Это также работает, например. установка флага -DDEBUG для предварительной обработки.

(Обновление: я был только наполовину прав. См. Chris Espinosa, принял ответ повторно: эта ошибка SDK. Не то, что раздел GCC 4.0 появляется, когда для Active SDK установлено значение "Устройство", это означает, что ваш базовый SDK и Active SDK должен соответствовать доступу к этим настройкам).

Ответ 5

Это своего рода ответ "подключен", но эй, иногда это проблема: включены ли точки останова? Иногда, когда я отлаживаю, я забываю нажать кнопку на панели инструментов отладки, которая включает и отключает точки останова.

Ответ 6

Попробуйте запустить проект, нажав Command-Option-Y (это заставляет Xcode запускать программу с помощью отладчика).

Кнопки на панели меню Xcode могут несколько вводить в заблуждение. Если кнопка говорит "Выполнить", она не запускает программу в отладчике. Если он говорит "Go", он запускает программу, однако она была построена последним (то есть релиз или отладка). Command-Option-Y запускает программу специально в отладчике.

Кроме того, убедитесь, что ваши точки останова включены. Вы можете щелкнуть правой кнопкой мыши по ним, чтобы проверить. Кроме того, в окне Debugger на панели инструментов должна быть опция для активации или деактивации контрольных точек. Убедитесь, что они активированы.

Ответ 7

В списке настроек сборки вы не учитываете самый важный из них:

alt text http://idisk.mac.com/cdespinosa/Public/Generate%20Debug%20Symbols.png

Убедитесь, что для параметра "Отладка" установлено значение "Сгенерировать символы отладки" и убедитесь, что конфигурация Debug активна при создании и отладке.

Две другие вещи, которые нужно попробовать:

1) Снимите флажок "Исправить и продолжить". Ваш подробный журнал gdb указывает, что он может быть включен. Убедитесь, что вы проверяете целевые настройки, а не параметры проекта, подтверждая это.

2) Не пытайтесь работать с правами root. Непонятно, зачем вам это нужно. Возможно, что Xcode, работающий под управлением root, взаимодействует с симулятором; откровенно мы не используем эту конфигурацию, поэтому я не знаю.

В журнале отображается все, что работает нормально. У вас есть встроенный двоичный файл, который запускается в Simulator; это правильная архитектура и хорошо сформированная; у вас есть символы отладки; у вас есть точка останова, и точка останова устанавливается. Мы берем ваше слово за это (поскольку мы не видим вашего источника), что точка останова на самом деле находится в строке выполняемого кода.

Ответ 8

Это может быть исключительно очевидный ответ, но он может работать. Вы пытались добавить точки останова в код, отличный от main()? Например, в приложении Appendate applicationDidFinishLaunching? Я знаю, что СЛЕДУЕТ сначала перейти к главному, но поскольку этот код в основном не изменен для приложений iPhone, он может быть немного шелушащимся. Во всяком случае, стоит попробовать.

Кроме того, чтобы найти опции GCC 4.0 - Code Generation, щелкните треугольник, чтобы открыть группу Targets, и нажмите на название своего приложения под Target. Нажмите кнопку "Информация" вверху окна Xcode, и вы получите настройки для своего приложения. Перейдите к сборке. Убедитесь, что в раскрывающемся списке "Показать:" установлено значение "Все настройки". Если вы прокрутите вниз оттуда, это должен быть один из списков, которые вы можете редактировать (после Версии и до GCC 4.0 - Язык)

Ответ 9

Когда программа запущена, вы можете сделать CTRL-C в окне консоли (пока курсор там). Если вы прервите тип программы info br, который должен предоставить список активных точек останова, тогда будет вопрос, являются ли они тем, что вы установили?

Ответ 10

Есть два файла конфигурации gdb, которые могут быть полезны для просмотра.

  • /etc/gdb.conf

У меня есть MD5 (/etc/gdb.conf) = 31b58e1ecf038554faadf777d63e9085

  • ~/.gdbinit

У меня нет, у вас есть?

Ответ 11

Вы подтвердили, что ваша конфигурация сборки использует сертификат разработки для подписи кода?

Если вы используете сертификат Ad Hoc, он все равно будет создавать и работать нормально, но вскоре после запуска приложения Xcode отсоединится от устройства, поэтому точки останова никогда не пострадают. Вы можете быстро определить, был ли он отключен или нет, если вы посмотрите в левом нижнем углу основного окна Xcode после того, как вы нажали "Сборка и переход" - если вы не используете фактический сертификат устройства разработки, вы увидите сообщение, говорит что-то вроде "Недопустимый шестнадцатеричный код, полученный с устройства".

Ответ 12

Похоже, вы запускаете программу как root, которая не кажется правильной...

Ответ 13

Если вы используете сертификат Ad Hoc, он все равно будет создавать и работать нормально, но вскоре после этого запуск приложения, Xcode будет отсоединен от устройства, поэтому точки останова никогда не пострадают.

Это помогло мне.

Ответ 14

Я должен спросить, так как у меня была такая же проблема, это настоящий "мак"? Эта точная проблема связана с ядром hacintosh voodoo. Если вы используете ядро ​​voodoo, загрузитесь с помощью std_dyld = 1, и все будет хорошо

Ответ 15

Это действительно работает на ядре voodoo, загрузка с помощью std_dyld = 1 заставляет Xcode останавливаться в точке останова. Удивительный совет, действительно. Большое спасибо вам, Джон, своего рода спасателя! Я использовал OSX86Tools, чтобы добавить этот флаг загрузки автоматически. Polo

Ответ 16

У меня была такая же проблема. У меня пока нет реального решения, но я понял, что в моем случае это зависит от устройства. Ошибка происходит только на моем iPod Touch 4G. Когда я переключаюсь на iPhone 3G, все работает нормально, а точки останова работают снова.

Я не знаю, связано ли это с проблемой, но может быть проблема с iPod4 из-за установленной бета-версии iOS 5. Обычно, когда я сталкиваюсь с ошибкой в ​​iOS 5, достаточно просто перезагрузить устройство, Однако... перезагрузка iPod4 в моем случае не помогла...

Решение:

Эта проблема прослушивала меня сейчас несколько недель, но я, наконец, нашел решение для своего дела:

  • Убедитесь, что SDK на вашем Mac идентичен (или новее) в качестве версии iOS на вашем устройстве.
  • Перезагрузите устройство, когда он подключен через USB и Xcode работает.

Ответ 17

Я пробовал почти все в этом потоке, и перезагрузка устройства решила мою проблему.

Ответ 18

У меня была аналогичная ситуация. После 6 часов отладки и сравнения файлов проекта, она наконец-то сработала. Ситуация заключалась в том, что у меня был 2-летний проект, первоначально сделанный в Xcode 3,1 дня. Я попытался запустить его в Xcode 4.5.1 с помощью контрольных точек, и он никогда не работал.

Вот что я сделал, чтобы исправить это.

1) В проекте > Настройки сборки.. Поиск отладки. 2) Только встроенная архитектурa > Изменить отладку на Да 3) Создание символов отладки > Да 4) Макросы препроцессорa > Debug = 1

Теперь он отлично работает.

Ответ 19

Apple должна действительно улучшить общий опыт Xcode. Я понимаю его бесплатное (эй, вы получаете то, за что платите), но все же ошибки в нем почти оскорбительны для разработчиков.