The Xaw3d/Xmu libraries were ported by Johannes Plass as part of his Ghostview project on OpenVMS. This is also reflected in the filestructure on the original server. Since both libraries are required for many other programs as well I've created a new archive containing all the necessary files to recreate the libraries. To build using this version execute the following commands:
$ unzip -o xawxmu.zip $ @[.command]setup distrib compile $ xmake xmu,xaw3d
This should built the libraries without error and further interaction.
The result of the built are two shareable images, one for Xaw3d and one for Xmu. Although one can give a full path for a shareable image at link time, OpenVMS does expect to find the file in sys$share at runtime. OTOH for various reasons one might not want/be able to place the files in this location. To solve just define a logical with the same name as the shareable image and point with this to the location of the image in the filesystem, e.g. on my system I have:
$ sh log xmulibshr "XMULIBSHR" = "PUBBIN:XMULIBSHR" (LNM$PROCESS_TABLE) $ sh log xaw3dlibshr "XAW3DLIBSHR" = "PUBBIN:XAW3DLIBSHR" (LNM$PROCESS_TABLE)
Source files ported from a Unix system often contain include
statements like this #include <X11/Xmu/file.h>
,
which reflects the organization of these files on this OS, i.e.
the header files for Xmu/Xaw(3d)/... are located in a sub-directory
of the one containing the X11 header files. To be able to work with
syntax like this on an OpenVMS system one has to tweak the usual
definition of the logical X11 a bit ;-).
One thing is that one has to make X11 a rooted logical, so that a
path like x11:[xmu] (which is what the above translates to on OpenVMS)
makes sense. The second is that once again one might want to separate
the header files delivered by Digital from the ones coming with this
package. To do this create a toplevel directory as the home for
non-DEC header files, add to this subdirectories named xmu and xaw.
Copy the header-files from the distribution to these new directories.
As an example the definition on my system looks like this:
$ sh log x11 "X11" = "X11ADD" (LNM$PROCESS_TABLE) = "X11ADD:[XPM.LIB]" = "DECW$INCLUDE" = "PUBBIN" 1 "X11ADD" = "DKA300:[PUBLIC.XTOOLS.LIBS.]" (LNM$PROCESS_TABLE) 1 "DECW$INCLUDE" = "SYS$SYSROOT:[DECW$INCLUDE]" (DECW$LOGICAL_NAMES) = "SYS$SYSROOT:[DECW$INCLUDE.EXTENSIONS]" 1 "PUBBIN" = "PUBLIC$ROOT:[AEXE]" (LNM$PROCESS_TABLE) "X11" = "DECW$INCLUDE" (DECW$LOGICAL_NAMES) 1 "DECW$INCLUDE" = "SYS$SYSROOT:[DECW$INCLUDE]" (DECW$LOGICAL_NAMES) = "SYS$SYSROOT:[DECW$INCLUDE.EXTENSIONS]"
Comments to: Martin P.J. Zinser
Last modified: 19991212