UNIX系OSで使われているウィンドウシステム「X Window System」(現在はX11とも言う)
これを表示するには、Xlibを使う。
まずは、その仕組み上、Xサーバに接続する必要がある。
XOpenDisplayで接続する。
まずは、Xlibのインストール。
$ sudo yum install libX11-devel [sudo] bg1 のパスワード: Fedora 29 - x86_64 - Updates 4.2 kB/s | 6.9 kB 00:01 Fedora 29 - x86_64 - Updates 1.1 MB/s | 27 MB 00:24 Fedora 29 - x86_64 5.6 kB/s | 8.1 kB 00:01 メタデータの期限切れの最終確認: 0:00:01 時間前の xxxx年xx月xx日 xx時xx分xx秒 に実施しました。 パッケージ libX11-devel-1.6.6-1.fc29.x86_64 は既にインストールされています。 依存関係が解決しました。 行うべきことはありません。 完了しました! $
既にインストールされてた。
(たぶんElectronやった時にインストールされたのかな。)
で、
Display構造体ポインタdを用意し、XOpenDisplayに引数NULLを渡して、戻り値のポインタをdに格納する。
これでXサーバに接続される。
あとは、dを取得できたことを確認するために、dを出力。
$ vi XOpenDisplay.c $ gcc XOpenDisplay.c -lX11 -o XOpenDisplay $ ./XOpenDisplay d = 022df260 $ ./XOpenDisplay d = 0133b260 $
dの値が出力されている。
毎回変わる模様。
これだけでは、当然まだウィンドウを表示できない。
表示への第一歩である。
Sample/xlib/XOpenDisplay/XOpenDisplay/src/XOpenDisplay at master · bg1bgst333/Sample · GitHub