2016-04-02 4 views
4

Я следил за this exercise. На этой странице есть инструкции по установке Valgrind 3.6.1, но эта версия Valgrind не поддерживается моей текущей версией ядра Linux. Итак, я установил Valgrind 3.11.0 и следовали инструкциям там после того, как и на запуск этой команды:valgrind: mmap (0x600000, 8192) не удалось в UME с ошибкой 12 (не может выделить память)

$ valgrind ./ex4 

получил эту ошибку:

valgrind: mmap(0x600000, 8192) failed in UME with error 12 (Cannot allocate memory). 

Как это исправить?

Я использую Ubuntu 14.04 LTS с ядром версии 4.4.0

+0

Извините, но что именно вы пытаетесь выполнить? Вы хотите установить его? Вы хотите протестировать его на ошибку сегментации на одной из ваших программ? –

+0

Похоже, вы планировали дать ссылку на код, который вы пытаетесь запустить. Можете ли вы добавить URL-адрес? У вас есть разумно сконфигурированная машина или виртуальная машина с достаточной памятью? Могли ли вы запустить Valgrind еще в других программах? Вы используете 32-битные или 64-битные сборки? Хотя статья/ссылка, которую вы используете, должна быть довольно старой, чтобы предлагать Valgrind 3.6.1, вы были правы, чтобы обновиться до 3.11.0, и все должно работать так же, как и в новой версии, как это было бы раньше с более старой версией , –

+1

Вам нужно: https://bugzilla.redhat.com/show_bug.cgi?id=1301093 –

ответ

2

ошибка, при которой вы столкнулись на самом деле ядро ​​ошибка, которая была исправлена ​​в последующих версиях. Подробнее здесь:
https://bugzilla.redhat.com/show_bug.cgi?id=1301093

Чтобы преодолеть эту ошибку, я хотел бы предложить вам обновить ядро.
Примечание: Я сам использую Ubuntu 14.04 для ядра версии 3.16.0-67, и он работает без каких-либо проблем.

Редактировать: Как указано OP в комментариях, ошибка была исправлена ​​в версии ядра 4.5.2.

+1

@ShyamSaini согласен с ответом, если вы считаете, что это помогает –

+0

@abhishek_naik У меня уже есть машина с самым последним ядром Linux, которое является версией 4.4.0. Как вы сказали, он работает с версией ядра 3.16.0-67, но как насчет последней версии моей машины? – mysticTot

+0

@ShyamSaini, я предлагаю вам загрузиться с другой версии ядра. Если вы не знаете, как загрузиться с другой версии, обратитесь к началу принятого ответа http://askubuntu.com/questions/738790/stopping-system-v-runlevel-compatibility-ubuntu-14-04-lts. –

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