CS551 - Self-Study Exercises
What's Where in X
Note: These locations apply to the standard organization of directories. They may vary on your system. However,
in most cases, once you arrive at the right bin, lib, etc. directory, the contents will be as described
here.
/usr/bin/X11
- Executables for standard (MIT distribution) X clients. Many installations mount executables for "contribs"
(clients not supported by MIT, but distributed with X) and local clients here as well; others use
/usr/bin or /usr/local/bin for non-standard clients.
/usr/lib/X11
- Run-time libraries for X. As of X11R4, Xlib and Xt routines are stored in run-time libraries for dynamic
linking are run-time (rather than being linked statically by -ld), so this directory must be accessible
during execution of X-based programs. The most commonly used libraries are libX11 (basic X
routines), libXt (X Toolkit routines), libXaw (Athena widgets), libXmu (Xmu
utilities), libXw (Hewlitt-Packard widgets), and libXm (Motif widgets).
- The colors supported by the current version of X are found (in readable form) in rgb.txt.
- /app-defaults
Resource default files for the X clients stored in /usr/bin/X11.
- /config
Files used by system administrator for installing X.
- /fonts
Font subdirectory system (see Appendix B in Volume 4). The files fonts.alias and fonts.dir
are found in subdirectory /misc.
- /xinit
System defaults for the "rc" files (e.g., xinitrc, xserverrc, twmrc) are kept here for
reference by X startup programs.
/usr/include/X11
- Header (include) files for Xlib and Xtoolkit routines. [Special note for X11R4 systems: Prior to R4, the
Athena widgets were stored here as well, so copies of the pre-R4 headers are still maintained here for
upward compatibility. All new clients, however, should use the versions stored in /Xaw.] In
keeping with this tradition, most systems that mount other widget sets -- such as the Free Widget
Foundation or Cornell widgets -- keep them in subdirectories whose names reflect the widget set names
(e.g., fwf or cu).
- /Xaw
Header files for Athena widget set.
- /Xm (not on all systems)
Header files for Motif widget set.
- /Xmu
Header files for utilities (used by Athena and some other widget sets).
- /Xw (not on all systems)
Header files for Hewlitt-Packard widget set.
- /bitmaps
Standard bitmaps, in the form of include files.
- /images (X11R4 and earlier)
Standard images, in the form of pre-loaded pixel files.
- /extensions
Experimental versions of possible future extensions to X; extremely risky to use.
- /olgx and /olgx_private (not on all systems)
Header files for OpenLook widget set. On Sun systems, these will be found under xview.
- /uil (not on all systems)
Header files for User Interface Library furnished with Motif.
- /xview and /xview_private (Sun systems only)
Header files for Sunview and OpenLook widgets.
/usr/man/X11
- The man() pages for X routines.
/vol/X11R6
- (name may vary somewhat from one system to another; some systems maintain these files on tape to
conserve disk space)
- /mit
All X items supported by MIT and the X Consortium are in this subdirectory system. Exploring it will
teach you a lot about how X clients are organized.
- /contrib
X items distributed by MIT but not directly supported (i.e., user "contributions") fall in this subdirectory
system. Again, you can learn a lot by seeing how other people develop and distribute their X applications.
- /contrib/examples/OReilly
This is where you'll find the example programs mentioned in the course text. Try not to keep lots
of duplicates hanging around in your own file space, since they take up a fair amount of space.