Previous Application Programming: Distributing Callable IDL Applications Next

Creating an Application Distribution

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. If your Callable IDL application uses one or more SAVE files, you may find it convenient to use the IDL Project mechanism to create the distribution. If your application does not use a SAVE file, use the Project  Export mechanism (Windows only) or the make_rt script (UNIX only) to create an IDL application distribution into which you will place the executable file or files for your application. See Using the Export Feature without a Project (Windows Only) or Creating a Distribution Using the make_rt Script for details.

The steps you will take after creating the IDL application distribution depend on the platform on which your Callable IDL application will run.

Windows

Once you have created an IDL application 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.  

  3. If your application uses preferences, edit the resource/pref/idl.pref file to contain the correct preference values.

UNIX

Once you have created an IDL application 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 simply 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. The idl script 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.  

  4. 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:
    1. 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:
    2. ./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.

       

    3. 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.
    4.  

      If there are other ITT Visual Information 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  
      

     

  5. If your application uses preferences, edit the resource/pref/idl.pref file to contain the correct preference values.

  IDL Online Help (March 06, 2007)