All Manuals > LispWorks Delivery User Guide > 8 Delivery on Linux, FreeBSD, AIX, x86/x64 Solaris and Unix


8.2 X11/Motif considerations

The section describes issues relevant to delivery of CAPI applications running on X11/Motif.

Note that the X11/Motif GUI is deprecated on Linux, FreeBSD, x86/x64 Solaris and Mac OS X, because the alternative GTK+ GUI library is now supported.

8.2.1 Loading Motif

On LispWorks platforms supporting pthreads, the supplied image contains the GTK GUI only, and therefore GTK is the default graphical library for applications. To build a Motif application on these platforms you need to include

(require "capi-motif")

in your delivery script.

You may wish to consider building a GTK version of your application too.

8.2.2 Motif on the target machine

A suitable version of the OpenMotif library must be installed on the target machine for your CAPI/Motif application to run. The version requirements are as for LispWorks itself, as mentioned in the LispWorks Release Notes and Installation Guide .

8.2.3 Fallback resources

If your CAPI/Motif application needs fallback resources then it should pass the :application-class and :fallback-resources arguments when calling capi:display and/or capi:convert-to-screen.

See capi:convert-to-screen in the CAPI User Guide and Reference Manual for a full description of these arguments.

You could use the LispWorks resources as a starting point when constructing your application's resources. You can see the LispWorks fallback resources (these are for application class Lispworks) as described under "Using X resources" in the CAPI User Guide and Reference Manual .

You can override the default resource name using the capi:element initarg :widget-name or the accessor (setf capi:element-widget-name).

8.2.4 X resource names use Lisp symbol names

The default color and other attributes for each CAPI pane on X11/Motif is computed as an X resource using the symbol name of the pane's class. Therefore obtaining the correct X resources depends on the application containing these symbol names.

Symbol names are removed at delivery level 5, but you can retain specific names in the delivered image by passing a list of the class names to deliver as the value of the keyword argument :keep-symbol-names.

LispWorks Delivery User Guide - 15 Feb 2015