Сделать / 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
В противном случае переустановите...