Я построил проект через ndk, но, к сожалению, когда он запускается в эмуляторе Android, он выходит из строя со следующей подсказкой:
[1] + Stopped (signal) ./secfs secfs-client /data/fuse_dir /data/pwrite/test_11
И затем я последовал за учебником, чтобы отладить мой проект, но он пришел к файлам сборки. И мне нелегко понять файлы Ассамблеи. Итак, я пришел, чтобы использовать основной дамп. Но, когда система обрабатывает основной файл, и я пытаюсь прочитать основной файл с помощью gdb, он запрашивает следующее, и gdb, похоже, не работает с ним:
Core was generated by './secfs secfs-client /data/fuse_dir /data/pwrite/test_11'.
Program terminated with signal 11, Segmentation fault.
#0 0x4001e7f0 in ?? ()
(gdb) bt
#0 0x4001e7f0 in ?? ()
#1 0x4001fdfa in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
В конце концов, я понятия не имею, что делать дальше, любая идея для этого? благодаря
Используйте (грубую) силу. Записывайте записи журнала по всему вашему коду и смотрите, где он останавливается. Таким образом, у вас будет представление о том, какая часть вашего кода вызывает SEGFAULT. Запустите приложение несколько раз и посмотрите, что такое последний оператор журнала. Не предполагайте, что код, следующий за последним оператором журнала, является кодом нарушения. Иногда некоторые записи журнала не отображаются в журнале. Я думаю, что это из-за внутренней буферизации текста. Вот почему вы должны запускать код несколько раз.