gdb: исчерпана виртуальная память

Я пытаюсь отладить приложение с помощью gdb в Linux. Однако при загрузке символов из общей библиотеки, которую я хочу отладить, gdb всегда завершается с ошибкой:

gdb/utils.c:904: internal error: virtual memory exhausted: can't allocate 5592 bytes.

uname показывает unlimited для всех параметров, включая vmemory. Любые идеи о том, как решить эту проблему?


person 341008    schedule 06.09.2010    source источник


Ответы (2)


Какую версию gdb вы используете?

В gdb была старая ошибка, которая могла вызвать эту проблему:

http://sourceware.org/bugzilla/show_bug.cgi?id=9232

Однако в нем говорится о блоке памяти гораздо большего размера, чем то, из-за которого вы получаете ошибку.

Кроме того, проверьте, сколько фактического свободного места доступно через top или free или vmstat.

person maniac_inside    schedule 06.09.2010

Попробуйте использовать:

ulimit -d unlimited

Это сделает виртуальную память, выделенную пользователю (обычно несколько килобайт: сделайте ulimit -d, чтобы узнать это значение) до неограниченного количества килобайт.

person Lakshmi Swetha G    schedule 27.01.2017