If My.idl included another Interface Definition List (IDL) file, MyOther.idl, the compiler assumes that MyOther.idl resides in the local directory. If it resides in directory /includes, for example, invoke the compiler with the following command:
idlj -i /includes My.idl
If My.idl also included Another.idl that resided in /moreIncludes, then you would invoke the compiler as:
idlj -i /includes -i /moreIncludes My.idl
You can begin to see that if you have a number of places where included files can come from, the command becomes long and unmanageable. As a result, there is another means of indicating to the compiler where to search for included files. This technique is very similar to the idea of an environment variable. You must create a file called idl.config in a directory that is listed in your CLASSPATH. Inside of idl.config you must provide a line in the following form:
includes=/includes;/moreIncludes
The compiler takes the first version of the file it locates and reads in its includes list. In this example, the separator character between the two directories is a semicolon (;). It is a semicolon (;) on the Microsoft Windows NT platform and a colon (:) on the AIX platform.
Note: Some platforms will fail when issuing a long command line. If the command line to invoke the compiler becomes too long, use the idl.config file.