This section discusses the process of creating an application distribution that includes the files necessary to run IDL, allowing you to distribute your application to users who do not already have IDL installed.

First, see Creating an Application Distribution for information on creating an IDL application distribution. The steps you will take after creating the IDL runtime distribution depend on the platform on which your Callable IDL application will run.

Windows


Once you have created an IDL runtime distribution, you must do the following:

  1. Add your Callable IDL application executables to the bin/bin.platform subdirectory of the distribution where platform is the name of the platform for which you created the application.
  2. If your application uses preferences, edit the resource/pref/idl.pref file to contain the correct preference values.
  3. If you are using the launch script generated by the MAKE_RT procedure, modify the launcher’s .ini file to invoke your Callable IDL application rather than the idlrt.exe executable. Alternately, you can provide instructions detailing how to execute your Callable IDL executable file.

UNIX


Once you have created an IDL runtime distribution, you must do the following:

  1. Add your Callable IDL application executables to the bin.platform directory, where platform is the name of the platform for which you created the application. If you are distributing your application on multiple platforms, copy the executable for each platform to the corresponding bin.platform directory. Placing your executables in the bin.platform directory offers a couple of advantages:
    • It simplifies application startup, especially if your application is distributed for multiple platforms. The application startup script calls a script in the bin directory. This script is designed to start the correct executable, depending on the platform on which it is being executed. This allows the user to start the application on any platform by executing the startup script in the top-level directory, thereby saving the user from having to know the directory in which the executable is located.
    • It saves the user, or your installation script, from having to set the LD_LIBRARY_PATH environment variable because sharable libraries are located in the bin.platform directory.
  2. Rename the idl script. It is located in the bin directory of your distribution. For Callable IDL applications, this script must use the same name as your application executable in the bin.platform directory. For example, if your application executable in the bin.platform directory is called myapp, rename the idl script in the bin directory to myapp.
  3. Edit the startup script. In the top-level directory of your application distribution, there is a startup script with the name specified by the startcommand parameter you specified when you ran the make_rt script. Make the following changes to this script:
    • Edit the startup script to execute the script in the bin directory that you renamed in the previous step. For example, if your application executable in the bin.platform directory is called myapp, and you therefore renamed the idl script in the bin directory to myapp, you would edit the startup script in the top-level directory as follows:
    • ./bin/myapp

      Note: The above command requires the user to execute the startup script from the top-level directory of your application distribution. To allow the user to launch your application from a different directory, the user (or your installation script) could change the command to use the full path to the script in the bin directory. See the example after the following step.

    • In order to allow your application to find the correct executable (either IDL or a Callable IDL executable), the IDL_DIR environment variable must be set on the user’s machine to point to the top-level directory of your application. Because this location is not known until the user installs your application, IDL_DIR must be set by either an installation script or by the user.
    • If there are other NV5 Geospatial Solutions products installed on the user’s machine, IDL_DIR may already be set. For this reason, IDL_DIR should be set for the instance of the shell that will be used to start your application, but should not be set in the user’s login scripts such as .cshrc or .profile. This allows IDL_DIR to be set properly for your application, without conflicting with the IDL_DIR setting for other products the user may have installed.

      The most convenient way to set IDL_DIR on the user’s machine is to have your installation script (or the user) edit the startup script. This saves the user from having to manually set IDL_DIR prior to launching your application. You can either provide the user with instructions on adding the necessary commands to the startup script, or you can have your installation script modify the startup script. For example, if an application called myapp is installed in the /home/apps directory, your startup script would resemble the following:

      IDL_DIR=/home/apps
      export IDL_DIR
      /home/apps/bin/myapp

      If you do not modify the startup script, the user must set IDL_DIR at the command prompt prior to launching your application. For example, if your application is installed in the user’s /home/myapp directory, the user could execute the following command at the C shell prompt:

      setenv IDL_DIR /home/myapp
  4. If your application uses preferences, edit the resource/pref/idl.pref file to contain the correct preference values.