Использование команды gdb info malloc в xcode (iphone dev) - PullRequest
3 голосов
/ 04 октября 2010

Я играю с gdb в xcode, отлаживая приложение для iphone.

Возможно, я смогу использовать следующую команду:

info malloc <0xaddress>

см. http://www.friday.com/bbum/2010/01/10/using-malloc-to-debug-memory-misuse-in-cocoa/и странная ошибка GDB не может отследить

У меня есть env vars MallocStackLoggingNoCompact = 1 и NSZombieEnabled = YES (через исполняемый файл в xcode).

Однако я получаюэто:

2010-10-03 21:29:01.366 memleaktest[10881:307] *** -[one release]: message sent to deallocated instance 0x1646b0
(gdb) info malloc 0x1646b0
Undefined info command: "malloc 0x1646b0".  Try "help info".

Чего мне не хватает для запуска этой команды?(xcode 3.2.4 и iphone SDK 4.1)

Ответы [ 3 ]

3 голосов
/ 15 декабря 2010

Оказывается, вы можете получать информацию только о malloc во время отладки в симуляторе, но не на устройстве.

1 голос
/ 14 декабря 2010
  1. В XCode перейдите в «Выполнить» -> «Включить Guard Malloc»
  2. Установите для переменной среды MallocStackLoggingNoCompact значение YES (как вы уже сделали)

, чтобы убедиться в том, что журналы обрабатываютсянаписано, что в консоли отладчика вы должны увидеть это сообщение:

malloc: stack logs being written into /tmp/stack-logs.xxxx.MyApp.xxxxxx.index

Теперь вы должны быть в состоянии:

(gdb) info malloc 0x1646b0
0 голосов
/ 28 декабря 2011

Испытываете ту же самую трудную проблему, какой-нибудь работающий метод найден?Хотя этот сбой происходит только в устройстве, а не в симуляторе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...