とりあえずの記録

はじめは同学科の人向けのナレッジまとめでした

QEMU - gtk initialization failedの解決

user@server:~$ qemu-system-x86_64 -L pc-bios
gtk initialization failed

CUI環境でのセットアップ時,コンソールの表示に用いるgtkの初期化に失敗して起きてくれないことがあります.
display backendを変更する必要があります.

方法1 - -nographicを使用

user@server:~$ qemu-system-x86_64 -L pc-bios -nographic

のように,実行時オプションに-nographicを付加します.
コンソール出力は標準入出力にリダイレクトされます.

コンソールからOSにシャットダウンコマンドを投入するか,
日本語入力を無効化した後に
Ctrl+A→c(このとき,Ctrlは押さない)→quit→Enterで抜けられます.

方法2 -display noneを使用

-display noneを付加すると,単にグラフィック出力が無効化されます.
シリアルコンソールのリダイレクトはなされません.

方法3 VNCなど,その他のdisplay backendを使用

詳しくは以下を参照してください.

Display options:

-display sdl[,gl=on|core|es|off][,grab-mod=<mod>][,show-cursor=on|off]

            [,window-close=on|off]

-display gtk[,full-screen=on|off][,gl=on|off][,grab-on-hover=on|off]

            [,show-tabs=on|off][,show-cursor=on|off][,window-close=on|off]

            [,show-menubar=on|off]

-display vnc=<display>[,<optargs>]

-display curses[,charset=<encoding>]

-display egl-headless[,rendernode=<file>]

-display dbus[,addr=<dbusaddr>]

             [,gl=on|core|es|off][,rendernode=<file>]

-display none

                select display backend type

                The default display is equivalent to

                "-display gtk"

-nographic      disable graphical output and redirect serial I/Os to console

-portrait       rotate graphical output 90 deg left (only PXA LCD)

-rotate <deg>   rotate graphical output some deg left (only PXA LCD)

-vga [std|cirrus|vmware|qxl|xenfb|tcx|cg3|virtio|none]

                select video card type

-full-screen    start in full screen

-vnc <display>  shorthand for -display vnc=<display>

これは

user@server:~$ qemu-system-x86_64 --help

を実行した際の出力の一部です.(v8.2.0)