gtminstall script

gtminstall is a stand-alone GT.M installation facility that attempts to download the latest / current production GT.M distribution from sourceforge.net and install GT.M using reasonable defaults. Download the gtminstall script from http://sourceforge.net/projects/fis-gtm/files/GT.M Installer to a temporary directory. Change to that directory and provide execute permission to the gtminstall script.

$ cd /tmp
$ chmod +x gtminstall

If you expect to store and process Unicode(R) characters in the database, you should install GT.M with UTF-8 support. You should install GT.M with UTF-8 support even if you are not using Unicode(R) characters but anticipate to use them sometime in the future.

$ sudo ./gtminstall --verbose --utf8
[Note] Note

For UTF-8 support, the gtminstall script relies on pkg-config to get the system default ICU version. If pkg-config is not available/applicable, it uses icu-config.

If your application does not store and process Unicode(R) characters in the database, install GT.M in M mode only with the following command:

$ sudo ./gtminstall --verbose

--verbose displays diagnostic information while the script downloads GT.M from sourceforge.net and installs GT.M. The script aborts execution when it runs into an error. When this happens fix the error, and run the gtminstall script again.

gtminstall is also a part of the GT.M binary distribution. gtminstall allows considerable customization using the following command line switches:

Command line switches * Description

--build-type buildtype

*

Type of GT.M build, default is pro

--copyenv dirname

Copy gtmprofile and gtmcshrc files to dirname; incompatible with linkenv

--copyexec dirname

Copy gtm script to dirname; incompatible with linkexec

--debug

*

Turn on script debugging option set -x

--distrib dirname or URL

Source directory for GT.M distribution tarball, local or remote

--dry-run

Do everything short of installing GT.M, including downloading the distribution

--filename filename

The name of the GT.M distribution tarball

--group group

Group that should own the GT.M installation

--group-restriction

Limit execution to a group; defaults to unlimited if not specified

--help

Print this usage information

--installdir dirname

Directory where GT.M is to be installed; defaults to /usr/lib/fis-gtm/version_platform

--keep-obj

Keep .o files of M routines (normally deleted on platforms with GT.M support for routines in shared libraries); defaults to discard if not specified

--linkenv dirname

Create link in dirname to gtmprofile and gtmcshrc files; incompatible with copyenv

--linkexec dirname

Create link in dirname to gtm script; incompatible with copyexec

--overwrite-existing

Install into an existing directory, overwriting contents; defaults to requiring new directory

--prompt-for-group

*

GT.M installation script prompts for group; default is yes for production releases V5.4-002 or later, no for all others

--ucaseonly-utils

Install only upper case utility program names; defaults to both if not specified

--user username

User who should own GT.M installation; default is root

--utf8

Install UTF-8 support using system default ICU version

--verbose -

*

Output diagnostic information as the script executes; default is to run quietly

  • options that take a value (e.g, --group) can be specified as either --option=value or --option value

  • options marked with * are likely to be of interest primarily to GT.M developers

  • version is defaulted from the mumps file if one exists in the same directory as the installer

  • This version must run as root.

If gtminstall finds that the environment is a Linux installation using systemd, it prompts the user for permission to insert addRemoveIPC=no into /etc/systemd/logind.conf and restart logind; if the user denies permission, gtminstall stops the installation after issuing instructions on how to perform the task independently and information on why it is necessary.

Example:

$ sudo ./gtminstall --verbose # installs latest version in M mode only 
$ sudo ./gtminstall --utf8 --verbose # install latest version with UTF-8 mode support
$ sudo ./gtminstall --distrib /Distrib/GT.M V6.3-003A --verbose # install V6.3-003A from a local directory