Version 2, last updated by tlwiechmann at May 15 08:25 2009 UTC

Creating an EsiObjects Kit for GTM

These steps assume you have GT.M V5+ installed on a Linux box.

Generating GTM Kit Files Using Cache.

  1. Make sure the EsiObjects listener serving the ESI development environment is shut down.
  2. Creating the GTM kit requires using the Cache system at this point. Bring the Cache Terminal interface up.
  3. Use the ZN command to switch to the development ESI namespace that contains the software.
  4. Now, execute Do GTMKit^VESOUGSV. This saves all VES* routines to the GTM_KIT_VES.RSA file and the ^VESO* globals in the KIT_VESO.GSA file. They will reside in the ESI development (default) directory.
  5. Now start up the EsiObjects listener in the development USER space.

Shut down the Terminal interfaces.

Installing the Old GTM Kit on the Linux System

If the kit is already installed, go to the next section.

  1. On your Linux system, under your kitting root directory, create a directory called esiobjects.
  2. Create two subdirectories to this directory called kit and zip. Change directory to esiobjects.
  3. Now, download the last EsiObjects kit for GTM and tar it into the kit directory according to the first time installation instructions: tar -xvf eo_server_gtm_?_?_?_?.tar
  4. Use the tar -czf ./kit/esiobjects.tar.gz ./buildkit command to unzip this file into the buildkit directory. This subdirectory contains the actual runtime directories and files of the EsiObjects kit.
  5. Run the following command to do the install: bash ./buildkit/setup

Loading the New Routines and Globals

  1. Transfer the GTM_KIT_VES.RSA and KIT_VESO.GSA files to the esiobjects directory on your Linux system.
  2. The KIT_VES.RSA file you transferred to the esiobjects directory contains records formatted with CRLF line terminators. It must be converted to LF for Linux.
  3. Bring up the Terminal interface and execute the following command at the shell: dos2unix /usr/local/esiobjects/GTM_KIT_VES.RSA
  4. Make sure the EsiObjects listener is shut down by entering the following shell command: /sbin/service esiobjects stop
  5. Shut down the EsiObjects database by running the following shell command: /usr/local/esiobjects/rundown
  6. Change directories to /usr/local/esiobjects/source and remove all routines by executing: rm -fr VES*.*
  7. Enter the esiobjects environment in direct M programming mode by executing the following command: esiobjects -di
  8. Invoke the D ^%RI to import the VES* routines in GTM_KIT_VES.RSA. Specifiy the /usr/local/esiobjects/source/ directory - make sure to put the / on the end.
  9. The %RI routiine does not compile the routines. To do this, Execute the following command to compile all the VESO* routines:
    • ZSY "$gtm_dist/mumps -object=/usr/local/esiobjects/source/VESO*.o /usr/local/esiobjects/source/VESO*.m"
  10. Now compile the ESI and Base libraries, invoke the VESOZ primative browser, select each library and compile it.
  11. Finally, execute the following: Do Load^VESOUGLD. This routine deletes all existing VES* globals and imports the new globals from KIT_VESO.GSA file.

Exit the mumps environment.

Initializing the New GT.M Kit

  1. At the shell prompt, start up the TCP listener by entering the following commnd: /sbin/service esiobjects start
  2. Enter the MUMPS environment through the esiobjects -di command.
  3. Use the primitive browser to compile the Base and ESI libraries. To start it, enter the following command: Do ^VESOZ - hit the Enter key at the UserID prompt then select and compile each of the libraries.
  4. From the EsiObjects IDE, create a session and connect to it. Once the session connects, it willl start the Upgrade. This will take only as short time.
  5. Within the Session Browser, expand the session and click on one of the classes to give it focus.
  6. Bring up Xecute Shell by executing Object|Xecute Shell. You should be in the $Environment object.
  7. Execute the following commands to prepare the kit:
    • Create I%P=ESI$Packager
    • Do I%P.PrepDist
  8. Execute the following commands to verify linkages, purge all code bodies to the last 3 versions and remove debug compiles for the ESI and Base libraries.
    • Create I%RM=ESI$ReleaseManagement
    • Do I%RM.PrepCore
  9. Now, disconnect the EsiObjects UI session.
  10. Shut down the listener from the shell interface by entering /sbin/service esiobjects stop
  11. To enable turning security off and on through VESOTCMN, execute the following command.
    • Set ^VESoTCP("P",0,"AllowDisable")=1
  12. Exit the mumps environment by entering the Halt command.
  13. Stop the listener by entering the following shell command: /sbin/service esiobjects stop
  14. Now rundown the databases by entering: /usr/local/esiobjects/rundown

The ESI.dat and USER.dat files are ready for inclusion in the kit.

Next, you need to zip it back up and create a tar file. To do that, execute the following steps.

Create the New GT.M Kit

  1. Change directory to /usr/local/esiobjects
  2. Create the esiobjects.tar.gz file:
    • tar -czf esiobjects.tar.gz upgrade_exclude.lis upgrade setup license.txt license_explained.txt readme_GTM_Linux.txt user source data config scripts
  3. Now move to the kitting directory that contains the directory ./kit
  4. Move the esiobjects.tar.gz file to this directory.
  5. Create the eo_server_gtm_Major_Minor_Release_Build file. Enter the following command: tar -cf eo_server_gtm_4_2_Release_Build.tar kit, replacing Release and Build with the proper numbers.
  6. Move the kit to SourceForge.