2013-09-02 8 views
0

Использование класса lerping rectangle в openFrameworks. Затем я попытался создать экземпляр массива, но он разбился с ошибкой:openFrameworks: отладчик Math killing?

«предупреждение: не удалось найти файл объекта» /Users/mike/Projects/simbl/build/SIMBL.build/Deployment/SIMBL.build/ Объекты-нормальные/i386/SIMBLPlugin.o»- нет информации отладки для„ /Users/mike/Projects/simbl/src/SIMBLPlugin.m“

билд выпуск был немного более стабилен, чем отлаживать

.

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

pos.x = catchUpSpeed * mouseX + (1-catchUpSpeed) * pos.x; 
pos.y = catchUpSpeed * mouseY + (1-catchUpSpeed) * pos.y; 

catchUpSpeed ​​is .03f

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

Благодарим за понимание!

ответ

1

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

Существует два способа создания приложения с отладочной информацией в Mac OS X/iOS: «DWARF» и «DWARF с dSYM». (это параметры в настройках проекта Xcode)

«DWARF» означает, что информация об отладке существует в ваших .o (объектных) файлах. Он не копируется в окончательный исполняемый двоичный файл для вашего приложения. В вашем бинарном приложении есть указатели назад к отладочной информации в объектных файлах. Это помогает ускорить соединение цикла &. Но для того, чтобы он работал, ваши объектные файлы должны быть расположены в том же месте, что и при построении вашего приложения. Копирование приложения на другой компьютер, скорее всего, нарушит это. Удаление промежуточных элементов сборки приведет к такой же проблеме. Информационная схема отладки «DWARF» предназначена для активной разработки на вашем локальном рабочем столе, где файлы .o останутся на месте и не будут удалены во время отладки вашего приложения.

«DWARF with dSYM» означает, что при соединении бинарного файла приложения выполняется другая команда (dsymutil) для создания связанной версии всей вашей отладочной информации - пакета .dSYM. Это собирает всю отладочную информацию из ваших объектных файлов в один пакет, и она сидит рядом с вашим двоичным кодом. Если вы хотите скопировать свой двоичный файл в другую систему, чтобы выполнить отладку &, принесите dSYM, и все будет работать нормально.

Я не уверен, как вы используете систему сборки, чтобы эта компоновка не срабатывала для вас во время отладки, но если вы делаете что-то за кулисами, чтобы ваш объектный файл SIMBLPlugin.o не существовал, отлаживая ваше приложение, попробуйте изменить проект на DWARF с помощью dSYM, и все будет в порядке.

Если Xcode сбой, это вряд ли будет связано с этим предупреждающим сообщением от отладчика. Но было бы неплохо записать отчет об ошибке, если вы видите это с текущей (Xcode 4.6 и т. Д.) Версией этих инструментов. http://bugreport.apple.com/ - включить текст репортажа об аварии из одного из экземпляров, и это будет место для их запуска.