Сделать / libc segfault во всех контейнерах arch linux

Я получаю следующее, когда я бегу make (из любого каталога с или без make-файла):

(gdb) run
Starting program: /usr/bin/make 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff73050ca in strlen () from /usr/lib/libc.so.6
(gdb) bt
#0  0x00007ffff73050ca in strlen () from /usr/lib/libc.so.6
#1  0x00007ffff7304dfe in strdup () from /usr/lib/libc.so.6
#2  0x0000000000418d89 in xstrdup ()
#3  0x0000000000423c33 in define_variable_in_set ()
#4  0x000000000040737b in main ()

Я создал контейнер с lxc-create -n $name -t /usr/share/lxc/templates/lxc-archlinux, У меня также есть различные контейнеры, которые я сделал несколько месяцев назад, с той же проблемой (make ошибки сега) но в остальном работают отлично (make работал, когда я впервые их сделал).

Выход из lxc-checkconfig показывает только следующее отсутствие, которое, как я считаю, было таким же несколько месяцев назад, когда все работало:

User namespace: missing
checkpoint restore: missing

Это работает на полностью обновленном сервере x86 arch linux. Что не так / как я могу отладить это?

Редактировать: ошибка исчезла в течение 10 минут на нескольких сеансах, и мне удалось скомпилировать то, что я хотел скомпилировать, но теперь это снова вызывает ошибку.

2 ответа

Решение

Ошибка вmake 4.1 связано с ttyname() возвращает NULL, например, когда /dev/pts не монтируется в chroot/ контейнер, приводит к этим симптомам. Благодаря make разработчик Пол Д. Смит за исправление, а также сопровождающий Debian Маной Шривастава за диагностику.

Попробуйте переустановить base-devel, выполнив

pacman -Syu base-devel

В противном случае переустановите...

Другие вопросы по тегам