ndk-стек не работает - PullRequest
       1

ndk-стек не работает

20 голосов
/ 22 ноября 2011

Я вызываю ndk-стек следующим образом:

cat file_temp | ~/workspace/android-ndk-r6b/ndk-stack -sym /home/xyz/trunk/apk/obj/local/armeabi/

Он находит отпечаток сбоя, но не показывает анализ стека. Напечатанная ошибка:

ndk-stack: elff/elf_file.cc:102: static ElfFile* ElfFile::Create(const char*): Assertion `read_bytes != -1 && read_bytes == sizeof(header)' failed. Stack frame #00  pc 43121300  Aborted

Есть идеи?

Спасибо.

1 Ответ

1 голос
/ 13 февраля 2012

Это программа ndk-stack, которая не может прочитать несвязанную версию ваших общих библиотек.

Конкретный сбой происходит из-за того, что существует файл, соответствующий имени модуля, но он недостаточно велик, чтобы содержать заголовок ELF.

Что нужно сделать:

  1. Убедитесь, что файлы, содержащиеся в каталоге, указанном через -sym, являются правильными (и не усекаются).

  2. Удалите усеченные файлы или файлы размером менее нескольких сотен байтов.

Если вам интересно, исходный код для ndk-стека находится в дереве исходников Android под ndk/sources/host-tools/ndk-stack

...