### Link with Response Files

Instead of specifying linker input on the command line, you can put filename parameters and most options in a response file. (The only exceptions are /FREEFORMAT | /NOFREEFORMAT and /LOGO | /NOLOGO, which must be set on the command line.) You can combine the response file with options and parameters on the command line.

When you invoke the linker, use the following syntax:

    ILINK @responsefile

The @ symbol indicates that the file is a response file. If the file is not in the working directory, specify the path for the file as well as the file name. If the linker cannot find a file, it stops with an error.

You can begin using a response file at any point on the linker command line. Although multiple response files can be specified on the command line, they cannot be nested.

Options can appear anywhere in the response file. If an option is not valid, the linker generates an error message and stops linking.

#### Example

The response file named fun.lnk contains the following:

    /DEBUG

    fun.obj text.obj table.obj care.obj

    /exec

    /MAP:funlist

    graf.lib

When you enter:

    ILINK @fun.lnk

the linker does the following:

- Links the four object modules fun.obj, text.obj, table.obj, and care.obj into an executable file named fun.exe. (Because no output type is specified, the linker defaults to .exe.)
- Generates the map file funlist.map (assuming the extension .map).
- Preserves debugging information (because of the /DEBUG option).
- Links any needed routines from the library file graf.lib, and from the default IBM C and C++ Compilers libraries specified in the object files.

Summary of Linker Options
Linker Error Messages