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

Проблема с iphone sdk 4.2.1

Наверное, глупый вопрос. При запуске моего проекта на устройстве в режиме отладки я получаю много предупреждений, имеющих следующую строку:

предупреждение: невозможно прочитать символы для /Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1 (8C148a)/Символы/System/Library/PrivateFrameworks/

Я думаю, что это связано с пространством между "4.2.1" и "(8C148a)". Как я могу избавиться от него? Это должно быть настройка где-то в Xcode.

У меня нет этих предупреждений на симуляторе.

заблаговременно, христианин

4b9b3361

Ответ 1

У меня была проблема с 4.2.1 (8C148a), которая, как мне кажется, вызвана различными файлами DeviceSupport на телефоне и в XCode. Я пробовал много вещей, но в конце концов решил его, удалив эту папку:

/Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1 (8C148a)/

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

Ответ 2

Я получал:

предупреждение: невозможно прочитать символы для /Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1 (8C148)/Symbols/usr/lib/info/dns.so(файл не найден).

Версия 4.2.1 не включает "info/dns.so". По крайней мере, это было для меня. Однако он существует в каталоге 4.2 и указывается ярлыком /DeviceSupport/Latest. Я просто скопировал "info/dns.so" туда, где искал его отладчик, и, похоже, исправил это предупреждение.

Ответ 3

Когда вы подключаете iOS-устройство (iPad) с немного более новой ОС, чем те, что находятся в SDK, в окне организатора Xcode должна появиться кнопка для загрузки новых символов. Хит его и ждать.

Ответ 4

Я видел такие ошибки, когда мое устройство не было в той же версии, что и для создания. Вы уверены, что не находитесь на бета-версии 4.2?

Ответ 5

Я не думаю, что 8C148a является "окончательным"; окончательные номера строит никогда не заканчиваются буквой (мой телефон сообщает "4.2.1 (8C148)" ). Я еще не отлаживал приложения на нем (мне стало скучно, ожидая, пока он извлечет символы и отправится домой).

4.2 GM был 8C134, поэтому вы, безусловно, запускаете новое программное обеспечение, но что-то где-то неправильно делает номер сборки.

Но я отвлекаюсь.


Какие каталоги находятся в /Developer/Platforms/iPhoneOS.platform/DeviceSupport? Если "4.2.1 (8C148a)" не существует, но "4.2.1", возможно, вам удастся сделать что-то подобное в терминале:

cd /Developer/Platforms/iPhoneOS.platform/DeviceSupport
ln -s "4.2.1" "4.2.1 (8C134a)"

Эквивалентно, если "4.2.1 (8C148)" существует, сделайте что-то вроде этого:

ln -s "4.2.1 (8C148)" "4.2.1 (8C148a)"

Обычно вы можете использовать этот трюк, чтобы заставить Xcode разговаривать с бета-устройством без установки бета-SDK; это полезно, если в вашей компании есть некоторые люди, которые запускают бета-тестирование (для целей тестирования) и другие люди в последнем "финале" (для целей выпуска).

Ответ 6

Там есть несоответствие в тот момент, когда выпущенная версия 4.2.1 опережает версию SDK 4.2

Комментарий @Khrob исправил это для меня, хотя!

Ответ 7

Пока они не обеспечат надежный SDK, рекомендуется обходное решение:

1 - выберите исполняемый файл (в "Исполняемые файлы" в обозревателе проекта),

2 - получите информацию и выключите "Break on Debugger() и DebugStr()" *

Приветствия и наилучшие пожелания в 2011 году.

Т

Это не отключает NSLog.

Ответ 8

У меня есть 4.2.1 на iPhone 3G и Xcode 3.2.5, работающем на MacBook Pro с 10.6.6. После чистой установки Xcode я получил приглашение загрузить символы для 4.2.1 после подключения моего iPhone. После передачи я больше не буду получать приглашение при подключении iPhone, но я получаю тонны сообщений "неспособных читать символы".

Во-первых, что не сработало для меня:

  • Создание символической ссылки на "4.2 (8C134)" с именем "4.2.1 (8C148)"
  • Создание символической ссылки внутри каталога "4.2.1 (8C148)", как есть в "4.2 (8C134)" на.. /../Developer/SDKs/iPhoneOS4.2.sdk

Оба этих метода вызвали ошибки UUID-несоответствия для нескольких библиотек. GDB запускается, но, похоже, висит.

Наконец, что сейчас работает для меня:

  • % cd/Developer/Platforms/iPhoneOS.platform/DeviceSupport
  • % mkdir '4.2.1 (8C148)' #, если он не существует
  • % cd '4.2.1 (8C148)'
  • % cp../4.2\\ (8C134 \)/DeveloperDiskImage.dmg *.
  • % cp -r../../Developer/SDKs/iPhoneOS4.2.sdk Символы
  • Попытка запуска сеанса отладки для приложения и просмотр Консоли. Для каждого предупреждения о несоответствии UUID удалите файл, указанный в сообщении журнала (у меня были AudioToolbox, CoreMedia и некоторые другие).
  • Остановите GDB и повторите попытку, надеюсь с успехом.

По крайней мере, для разработки моего приложения все работает отлично. Надеюсь, Xcode 4.0 прояснит это.