2008-10-09 2 views
4

Неужели кому-то здесь удалось запустить Eclipse под Valgrind? Я сражаюсь с особенно волосатым сбоем, связанным с кодом JNI, и надеялся, что Valgrind, возможно, сможет (еще раз) доказать его превосходство, но когда я запускаю Eclipse под Valgrind, JVM завершается сообщением об ошибке о невозможности создания начального объекта heap (у меня в настоящее время нет доступа к точной ошибке, я отредактирую этот пост, как только я это сделаю.)Запуск Eclipse под Valgrind

ответ

1

Если в исходном коде есть сбой, тогда gdb может быть лучшим выбором. Он должен даже остановить выполнение автоматически при сбое и может показать вам трассировку стека (команда bt).

2

Это работает, если вы run valgrind with --smc-check=all?

Также - valgrind значительно увеличивает требования к памяти программы. С чем-то большим, как Eclipse, есть много возможностей для неприятностей; мы надеемся, что вы 64-битный native (и, следовательно, имеете много адресного пространства) и имеете много оперативной памяти и/или свопинга.

0

Как использовать два отладчика? Я нашел this rather old article, которые раскрывают эту технику.

+0

Ну, я пробовал это (http://thisisnotaprogrammersblog.blogspot.com/2008/04/debugging-jni-code-using-eclipse-and.html), но в этом случае он не работает. Авария появляется, когда JVM собирается создать новый поток (внутри pthreads), и я не знаю, как отслеживать, что происходит неправильно. – JesperE 2008-10-14 12:13:27

+0

Говорят, что visualvm может делать посмертный анализ. Я не пробовал, но, возможно, попробовать попробовать (jdk6_7) https://visualvm.dev.java.net/features.html, дампы сырой нити и дампы ядра – 2008-10-14 15:16:42

Смежные вопросы