Падает где-то в недрах libncursesw. Ось бубунта 12.10. Пример взят из докуметации dialog. Вариант с пустым msgbox вставил в процессе экспериментов. Программа не падает, если запускать с tty1. Но благополучно падает, если в диалоге вместо enter нажать стрелку курсора.
#include <math.h>
#include <dialog.h>
int main(void) {
int status;
init_dialog(stdin, stdout);
/*status = dialog_yesno("Hello, in dialog-format", "Hello World!", 0, 0);*/
status = dialog_msgbox("", "", 0, 0, 1);
end_dialog();
return status;
}
CC = gcc
CFLAGS = -W -Wall -Wextra -pedantic -g -fomit-frame-pointer
LDLIBS = -ldialog -lncurses -lncursesw -lm
RM = rm -f
build : linstall.o
$(CC) $(CFLAGS) -o linstall linstall.o $(LDLIBS)
linstall.o : linstall.c
$(CC) $(CFLAGS) -c linstall.c
clean :
$(RM) *.o
dist-clean: clean
$(RM) linstall
P.S.: я догадался поставить debugging symbols. Вот что пишет:
Program received signal SIGSEGV, Segmentation fault.
cannot_delete (win=...) at /build/buildd/ncurses-5.9/ncurses/base/lib_delwin.c:59
59 /build/buildd/ncurses-5.9/ncurses/base/lib_delwin.c: No such file or directory.