Motif 1.2.3 Runtime and Development System for Linux

The Motif toolkit has come to Linux. Dale reviews Sequioa International's Motif Toolkit for Linux.

It is worth pointing out up front that for the most part, Motif is Motif regardless of who you buy it from. A vendor licenses the Motif source code from the Open Software Foundation (OSF), and then ports it to whatever platform they want so they can sell the resulting libraries and executables. Therefore, the main part of the product will not vary much from vendor to vendor, or platform to platform. However, where a vendor gets a chance to differentiate themselves is with the user's manuals and the installation procedure they provide. In my view, Sequoia has done an excellent job in bringing Motif to the Linux platform. Any of the complaints I raise in this article are really complaints about Motif and not about the job Sequoia has done.

What is Motif?

Motif is really three things. First, it is a set of guidelines which define the way an X-Window user interface should look and feel. To the untrained eye, Motif looks an awful lot like Microsoft Windows or OS/2's Presentation Manager. This should come as no surprise, when the history of Motif is considered. The Motif “shell” program provided with the libraries gives this history of Motif:

On December 30, 1988, OSF announced that the user environment component offering will be based on several leading technologies: Digital Equipment Corporation's toolkit technology (widgets) and the joint Hewlett-Packard/Microsoft submission of H-P's 3-D appearance and Microsoft's Presentation Manager-compatible behavior (window manager). The hybrid offering, OSF/Motif environment will provide users with a familiar way to access computer resources across a broad variety of computing hardware platforms, from personal computers to mainframes.

The driving force behind Motif was to unify the graphical user interface look and feel of Unix-based software so that it could compete for the desktop against other standards like the Macintosh or Microsoft Windows. By having a standard look and feel which was common across many hardware platforms, users would benefit by not having to relearn how to interact with software as they moved around and developers would benefit by having a standard to program against.

This brings us to the second part of what Motif is. Motif is a standard set of widgets with a documented interface which may be ported from platform to platform. It is safe to say that if a platform supports X-Window development, then it will not take much effort to make it support Motif. All that's needed are the Motif libraries, or failing that, a source code license from OSF for Motif and a minor bit of effort to port them.

To many people, Motif is just a window manager for X-Windows. This third aspect of Motif is what determines the way window borders are drawn, how windows are resized, iconified, and moved. Generally speaking, it defines how users and applications will interact with their windowing system.

Why Motif?

Why would you want to run Motif on your Linux system? There are three reasons, which parallel the three aspects of Motif discussed above. First, you may want the applications you build to follow the standards for GUI look-and-feel so that your users will feel comfortable sooner and will benefit from consistency across applications. Second, you may want to develop software on your Linux box that you would like to port to other X-Windows platforms. If you use the Motif toolkit to build your code, you will be able to quickly port the user interface to any other platform that has the Motif libraries available.

It is worth pointing out that the TK toolkit which comes with many distributions can be used to create Motif-compliant applications, though programming with it is radically different than programming with the Motif widgets. I will not betray my own bias on this issue; instead I defer you to the endless discussions on this topic which are found in the Usenet comp.lang.tcl and newsgroups.

The last reason you may want to buy Motif for your Linux box is to run the Motif Window Manager (mwm). You or your clients may wish to have exactly the same look and feel on your Linux box as you enjoy on other machines. While fvwm can closely emulate a Motif look, it is not the same. The mwm window manager seems rock solid and gives your Linux box an exact Motif look. Note that I am not trying to knock fvwm; in fact, I prefer it to mwm because I like its virtual desktop and its low memory use.


What kind of system resources does the Sequoia Motif consume? The manual indicated that 12MB of free disk space were needed under /usr, and 3MB were needed in /tmp. It turned out that 3.6MB of space was needed in the /tmp directory, and only 9.9MB of space were used in the /usr directory.

A Linux kernel newer than 0.99pl13 is required, and XFree86 2.0 must be installed in the standard way (under /usr/X386). The documentation describes how to check this (and in fact the installation script checks it as well). My Slackware 1.1.1 had it in the right spot.

Sequoia also recommends 12MB of RAM to do development (i.e., compiling and linking Motif programs). I have only 8MB and I was able to do it with no more swapping than I normally get when I do compiling. It is usable with 8MB, but certainly it's better with 12MB.