Под Ubuntu без графического интерфейса, какую команду я должен использовать, чтобы заменить gnome-терминал - PullRequest
0 голосов
/ 28 марта 2020

Моя операционная система - Ubuntu 18.4, и когда я пытаюсь создать код, указанный учителем, я получаю следующее:

root@ArcherJo:~/ucore_os_lab/labcodes_answer/lab1_result# make lab1-mon 
/bin/sh: 1: gnome-terminal: not found
Makefile:202: recipe for target 'lab1-mon' failed
make: *** [lab1-mon] Error 127

Найдите соответствующую строку Makefile

201 lab1-mon: $(UCOREIMG)
202         $(V)$(TERMINAL) -e "$(QEMU) -S -s -d in_asm -D $(BINDIR)/q.log -monitor stdio -hda $< -serial null"
203         $(V)sleep 2
204         $(V)$(TERMINAL) -e "gdb -q -x tools/lab1init"
...
217 TERMINAL        :=gnome-terminal

Тогда я понял, что это может быть потому, что моя система не имеет графического интерфейса, что означает, что я не могу использовать gnome-terminal, чтобы открыть новый терминал.

Так, какие улучшения я должен сделать, чтобы достичь подобных результатов?

Поскольку Makefile слишком длинный, позвольте мне обрисовать фон. Это экспериментальный курс по ОС. Мы используем qemu для аппаратного моделирования, а затем запускаем на нем свою собственную ОС.

Вот еще немного кода, который, я думаю, вам может понадобиться.

25 ifndef QEMU
26 QEMU := $(shell if which qemu-system-i386 > /dev/null; \
27         then echo 'qemu-system-i386'; exit; \
28         elif which i386-elf-qemu > /dev/null; \
29         then echo 'i386-elf-qemu'; exit; \
30         else \
31         echo "***" 1>&2; \
32         echo "*** Error: Couldn't find a working QEMU executable." 1>&2; \
33         echo "*** Is the directory containing the qemu binary in your PATH" 1>&2; \
34         echo "***" 1>&2; exit 1; fi)
35 endif
...
71 BINDIR  := bin
...
170 UCOREIMG        := $(call totarget,ucore.img)
...