XOpenDisplay

UNIX系OSで使われているウィンドウシステム「X Window System」(現在はX11とも言う)

X Window System

これを表示するには、Xlibを使う。

X11

まずは、その仕組み上、Xサーバに接続する必要がある。

Manpage of XOpenDisplay

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