This appendix lists the contents of various X distributions.
In This Appendix:
This appendix provides an overview of some of the X products that are currently available. We summarize various vendors' implementations, and discuss features that may help you to identify them. The following implementations are covered:
We also include a listing of some of the libraries that you may need in compiling software.
Some of these implementations may overlap and may contain components of several other systems. For example, the Motif Toolkit is included in most current vendor-supplied installations. Several vendors also offer applications that can switch back and forth between OSF/Motif and OPEN LOOK “modes.”
With a complete distribution, X software is installed in the following directories.
File | Description |
/usr/bin/X11/ | X executables, including clients, demos, and the X server. |
/usr/lib/X11/ | Server-specific software, including fonts, color data-bases, and configuration files. |
/usr/lib/ | X programming libraries. |
/usr/include/X11/ | X header files and bitmaps. |
/usr/man/ | X manpages. |
$HOME/ | User-specific startup and resource files. |
Keep in mind that your pathnames may differ, but the directories bin, lib, and include should exist in some form.
The names of libraries vary depending on the system—SunOS shared libraries have a .so.version or .sa.version extension, while Silicon Graphics shared libraries have a _s extension. A _p extension usually means that the library has been “profiled” for performance analysis. An extension such as _G0 indicates it was built with a specific compiler option.
The following information should help you determine what type of installation you currently have and what you would like to install.
To the user, Release 5 looks very similar to Release 4. Most of the new features (such as the font server, PEX, and the Xcms color system) are more visible to the X programmer and to the administrator than they are to the user. As in R4, the include files for toolkits and related files are grouped into subdirectories. (In previous MIT releases and some vendor implementations, the include files were in one directory.)
If you administer any systems that run OSF/Motif with X, the files shown in Table E-3 should be present. Of the files listed, XKeysymDB is an important one that is often forgotten with some Motif installations. This file maps the official OSF names for keysyms—most Motif programs will complain and generate numerous error messages if they cannot find this file when they start up. XKeysymDB is included in the MIT R5 release.
The names of the OSF/Motif libraries may be slightly different on your system, depending on the release of X11. Early releases of Motif (1.0.A) came with their own version of the X toolkit library. Most people named this libXtm.a, libMXt.a, or something similar to avoid confusion with the standard MIT libXt.a. If you are compiling a Motif program on one of these systems, the Motif specific X Toolkit library needs to be linked with:
% cc -o motifthing motifthing.c -lXm -lXtm -lX11
The location of the Motif include files may also vary depending on the implementation. The default location provided by OSF places them in /usr/include, but they may be in /usr/include/X11 instead. You may want them under /usr/include/X11 in order to keep all X11 files in one place. If so, the alternate location has to be specified with the -I flag to cc:
% cc -c -I/usr/include/X11 motifthing.c
Motif programs include the header files with the Motif subdirectory prepended:
#include <Xm/Xm.h>
The complete pathname of this file becomes /usr/include/X11/Xm/Xm.h.
File | Description |
/usr/bin/X11/mwm | The Motif Window Manager. |
/usr/bin/X11/uil | The UIL (User Interface Language) compiler. |
/usr/bin/X11/mre | The Motif Resource Editor (this is officially a “demo,” but it is potentially quite useful—only present in version 1.x). |
/usr/lib/libMrm.a | The Motif resource manager library. |
/usr/lib/libXm.a | The Motif toolkit library. |
/usr/lib/libUil.a | The Motif UIL library. |
/usr/lib/X11/XKeysymDB | A database of special OSF keysyms for Motif applications. |
/usr/lib/X11/app-defaults/Mwm | System-wide default resources for mwm. |
/usr/lib/X11/system.mwmrc | The default startup file for mwm. |
/usr/lib/X11/uid/ | A directory of compiled UIL files for clients. |
/usr/include/Xm/ | A directory of Motif toolkit include files. |
/usr/include/Mrm/ | A directory of Motif resource manager include files. |
/usr/include/uil/ | A directory of Motif UIL include files. |
$HOME/.mwmrc | The user-specific startup file for mwm. |
The OPEN LOOK GUI is currently packaged as part of the OpenWindows environment on Sun systems. OpenWindows is laid out differently from the MIT X installation: all software is installed under /usr/openwin, as listed in Table E-4.
Table E-5 summarizes the more important OPEN LOOK files.
File | Description |
/usr/openwin/bin/xnews | The OpenWindows server. |
/usr/openwin/bin/olwm | The OPEN LOOK Window Manager. |
/usr/openwin/bin/props | The resource editor (similar to Motif's mre). |
/usr/openwin/lib/lib* | Programming libraries for OPEN LOOK functions. |
/usr/openwin/lib/openwin-* | System-wide default files. |
$HOME/.openwin-* | Per-user default files. |
DECWindows is moving towards a Motif-like environment, but is still different in many ways. Most of it should be quite familiar to someone used to a MIT distribution. The MIT-derived X11 is available as an unsupported subset that can co-exist with the DECWindows environment.
Files | Description |
/usr/bin/Xws | The DECwindows server. |
/usr/bin/dxwm | The DECwindows window manager. |
/usr/bin/dxsession | The DECwindows session manager. |
/usr/bin/Xprompter | The login window tool (similar to xdm). |
/usr/bin/dxuil | The DECwindows User Interface Language compiler. |
/usr/lib/X11/uid/ | A directory of compiled UIL files. |
/usr/include/X11/ | A directory of both of DECwindows and MIT header files. |
/usr/include/mit/X11/ | A directory of vanilla MIT header files. |
/usr/lib/libXext.a | The DECwindows version of libXext. |
/usr/lib/libXext-mit.a | The vanilla MIT libXext. |
AIXWindows is quite different than the MIT distribution and it may take some work to get it to look like the MIT environment. The names and options of standard clients have been changed from what you are used to, and the layout of the software is quite different than other vendors’ implementations. The current version of AIX, 3.2, is also missing some clients you would expect when using an MIT distribution. The layout of libraries and include files is relatively standard.
Files | Description |
/usr/bin/X11/X | The AIXWindows server. |
/usr/bin/X11/mwm | The Motif window manager. |
/usr/bin/X11/xdt | The AIXWindows desktop. |
/usr/bin/X11/aixterm | The AIXWindows version of xterm. |
/usr/bin/info | The InfoExplorer hypertext X documentation browser. |
/usr/include/X11/*.h | AIXWindows header files. |
/usr/include/Xm/*.h | Motif 1.x header files. |
/usr/include/Mrm/*.h | |
/usr/include/uil/*.h | |
/usr/lib/lib*.a | Standard X11 R4 and Motif 1.x libraries. |
/usr/lib/X11/ | Standard X11 R4 lib files. |
/usr/lpp/info/X11fonts/ | A directory of fonts for the InfoExplorer utility. |
SGI has had a decent NeWS implementation for several years, working together with the SGI Graphics Library system (GL). X functionality was added over time in a piecemeal fashion. With the release of IRIX 4.0, X11 is an integral part of the server, and works well along with GL and NeWS. The clients are based on OSF/Motif, which comes with the OS.
When compiling software, you may suddenly discover that it requires a library you've never heard of. In your X11 adventures, you may see references to the following libraries.
Library | Description |
libX11.a | Xlib |
libXaw.a | Athena widget set |
libXext.a | Extensions to Xlib |
libXt.a | Toolkit |
libXau.a | Authorization |
libXdmcp.a | XDMCP |
libXinput.a | Input methods |
libXmu.a | Misc Utilities |
liboldX.a | Backwards compatibility library for X10 |
libphigs.a | R5 phigs |
libXm.a | Motif widgets |
libUil.a | Motif user interface language |
libMrm.a | Motif resource manager |
libXtm.a libMXt.a | Names for libXt when Motif (1.0.A) required its own version |
libMu.a | MIT Motif utilities library (sometimes found in software from MIT Athena project) |
libXw.a | HP Widgets in R3 and R4 contrib |
3.145.63.136