| Online Eiffel Documentation

EiffelStudio

# Batch compilation

In order to launch a compilation without user intervention you need to specify the `-batch' switch in the ec command line, otherwise the Eiffel compilation will be blocked. We will present below a typical example of batch processing on both Unix and Windows platforms where we want to compile a project in both frozen and finalized mode, then to launch the C compilations. At the same time we want to save the output of ec and the C compilations.

### Unix

In a file called `launch_ec' you can have the following:

    #!/bin/sh
    output_file="/output_path/OUTPUT"

    cd /your_project_path

    #Launch Eiffel compilation
    ec -batch -config config.ecf -finalize -c_compile 2> $output_file

    #Since only C compilation for finalized code is done
    #Launch C compilation for frozen code

    cd EIFGENs/target_name/W_code
    finish_freezing > $output_file

It will go the directory where your project is located and compile your Eiffel code using the `config.ecf' file located in your project directory and compile automatically the C code. All outputs will be stored in the file `/output_path/OUTPUT'.

Note: All output from ec are going to the error output, so do not forget to redirect the error output when you want to see the result.

### Windows

In a file called `launched_ec.bat' you can have the following:

    rem Launch Eiffel compilation
    ec -batch -config config.ecf -finalize -c_compile > c:\output_path\OUTPUT

    rem Since only C compilation for finalized code is done
    rem Launch C compilation for frozen code
    cd EIFGENs\target_name\W_code
    finish_freezing > c:\output_path\OUTPUT

It will go the directory where your project is located and compile your Eiffel code using the `config.ecf' file located in your project directory and compile automatically the C code. All outputs will be stored in the file `c:\output_path/OUTPUT'.

See Also
Command line compiler options