X Window System (X11)
The X Window System (commonly X or X11) is a computer software system and network protocol that provides a graphical user interface (GUI) for networked computers, and was initially developed as part of Project Athena. It implements the X display protocol and provides windowing on raster graphics (bitmap) computer displays and manages keyboard and pointing device control functions. In its standard distribution, it is a complete, albeit simple, display and human interface solution, but also delivers a standard toolkit and protocol stack for building graphical user interfaces on most Unix-like operating systems and OpenVMS, and has been ported to many other contemporary general purpose operating systems. Desktop environments such as GNOME, KDE, and Xfce, use the X Window System.
X provides the basic framework, or primitives, for building such GUI environments: drawing and moving windows on the screen and interacting with a mouse and/or keyboard. X does not mandate the user interface — individual client programs handle this. As such, the visual styling of X-based environments varies greatly; different programs may present radically different interfaces. X is built as an additional application layer on top of the operating system kernel.
Compiling X11 for i.MX
LTIB release 1.5 already comes with X11. To compile X11, besides mark X11 on package list, Mark also zlib and freetype, they are also on package list.
Before running X11 server, set the display environment variable:
$ export DISPLAY=:0.0
Call Xfbdev and start an X session:
$ Xfbdev &
The "&" symbol after Xfbdev allows X11 to run in background returning the prompt on command line to be able to call another application.
Mouse and Keyboard Configuration
To enable mouse and keyboard to be used on X applications, add "-keybd" and "-mouse" parameters with their respective devices i.e.:
Xfbdev -keybd keyboard,,/dev/input/event2 -mouse mouse,,device=/dev/input/mouse1 &