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

Оптимизация - степпинг может вести себя странно: iOS/Unity

Я пытаюсь интегрировать единство в приложение iOS. Я выполнил этот учебник http://www.agnosticdev.com/blog-entry/swift/integrating-unity-and-vuforia-ios-swift-project

Теперь после интеграции, когда я запускаю свое приложение, он выходит из строя и показывает эту ошибку на консоли: was compiled with optimization - stepping may behave oddly; variables may not be available.

Сбой: Журнал сбоев

Я пробовал поиск по Google и нашел эти ссылки:

и ничего не изменилось.

Я изменил уровень оптимизации как проекта, так и модуля. Я также добавил эту строку в файл подкачки: project 'MyProject', 'Debug - local'=>:debug, 'Debug - staging'=>:debug, 'Debug - PRODUCTION'=>:debug (до цели 'projectname' do)

Также я снял флажок Код двигателя в единстве.

Что я могу сделать, чтобы преодолеть эту ошибку? Любая помощь будет оценена, спасибо.

4b9b3361

Ответ 1

Код, который вы отлаживаете, - это код IL2CPP, который, вероятно, находится в библиотеке, предварительно созданной с оптимизацией (возможно, в libiPhone-lib.a). Ваши настройки сборки влияют только на код, который теперь компилируется в вашем проекте xcode, поэтому они не будут влиять на предварительно созданный lib. Чтобы избавиться от предупреждения, вам нужно будет перестроить эту библиотеку, и для этого вам понадобится исходный код Unity.

Что еще более важно, это не причина аварии. Это просто говорит вам, что сложнее найти источник аварии.

Похоже, он вызывает функцию LoadMetadataFile и сбой при доступе к возврату. Вероятно, вы можете установить точку останова на этом вызове функции и посмотреть, что происходит в ней и выходить из нее, чтобы найти следующий шаг отладки (инструкции bl на 5 строк выше выделенной строки сбой).

Вот некоторые документы, которые могут вам помочь: Яблоки, вызывающие конвенционные документы:  https://developer.apple.com/library/content/documentation/Xcode/Conceptual/iPhoneOSABIReference/Articles/ARM64FunctionCallingConventions.html

Справочная инструкция по руке (открыта для команды сбоя): http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0802a/LDRSW_imm.html

Ответ 2

У меня была такая же проблема, и я решил ее добавить в Apple LLVM - Custom Compiler Flags:

Другие флаги C: -DRUNTIME_IL2CPP = 1