2016-11-26 3 views
1

Я пытался отладить собственный код на студии Android. Мой отладчик отлично работает на простом jni-коде Hello World. Но когда я пытаюсь сделать то же самое с кодом, который связан с общим lib libcrypto.so и libccmssl.so, я не могу войти в собственный код.Не могу войти в собственный код - Android

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

enter image description here

Все указатели, что я должен смотреть на будут оценены, спасибо

ответ

1

Я пытался получить внешний C++ проект работы с андроида студии, так как уже неделю и пытается сузить причина -> «Почему я не могу выйти на машинный код»

для меня проблема была присутствие флага «-gstabs +» в LOCAL_CPPFLAGS я удалил его -> Build -> и Yay

Ниже приводится описание флагов: https://gcc.gnu.org/onlinedocs/gcc-3.3.6/gcc/Debugging-Options.html

-gstabs + Порождает отладочную информацию в формате уколов (если это поддерживается), с использованием расширений GNU, которые понимает только отладчик GNU (GDB). Использование этих расширений может привести к сбою других отладчиков или отказу от чтения программы.

Примечание: вышеупомянутое изображение SIGILL, которое я опубликовал в вопросе, по-прежнему сохраняется, но это было не то, что вызывало отладчик, чтобы не выполнять его.