Was this helpful?
Linking an EQUEL Program--VMS
EQUEL programs require procedures from several VMS shared libraries in order to run properly. After preprocessing and compiling an EQUEL program, you can link it. Assuming the object file for your program is called "dbentry," use the following link command:
link dbentry.obj,-
 ii_system:[ingres.files]equel.opt/opt,-
 sys$library:vaxcrtl.olb/library
The last line in the link command shown above links in the C runtime library for certain basic C functions, such as printf. This line is optional. Use it only if you use those functions in your program.
It is recommended that you do not explicitly link in the libraries referenced in the EQUEL.OPT file. The members of these libraries change with different releases of Ingres. Consequently, you can be required to change your link command files in order to link your EQUEL programs.
Assembling and Linking Precompiled Forms
The technique of declaring a pre-compiled form to the FRS is discussed in the Forms-based Application Development Tools User Guide. To use such a form in your program, you must also follow the steps described here.
In VIFRED, you can select a menu item to compile a form. When you do this, VIFRED creates a file in your directory describing the form in the VAX-11 MACRO language. VIFRED lets you select the name for the file. Once you have created the MACRO file this way, you can assemble it into linkable object code with the VMS command:
macro filename
The output of this command is a file with the extension ".obj". You then link this object file with your program (in this case named "formentry") by listing it in the link command, as in the following example:
link formentry,-
  empform.obj,-
  ii_system:[ingres.files]equel.opt/opt,-
  sys$library:vaxcrtl.olb/library
Linking an EQUEL Program without Shared Libraries
While the use of shared libraries in linking EQUEL programs is recommended for optimal performance and ease-of-maintenance, non-shared versions of the libraries have been included in case you require them. Non-shared libraries required by EQUEL are listed in the equel.noshare options file. The options file must be included in your link command after all user modules. Libraries must be specified in the order given in the options file.
The following example demonstrates the link command of an EQUEL program called "dbentry" that has been preprocessed and compiled:
link dbentry,-
  ii_system:[ingres.files]equel.noshare/opt,-
  sys$library:vaxcrtl.olb/library
Last modified date: 01/30/2023