Previous: Check syntax command, Up: Building commands


3.1.9 Analyze and elaborate command

Analyze files and elaborate them at the same time.

On GNU/Linux:

     $ ghdl -c [options] file... -e primary_unit [secondary_unit]

On Windows:

     $ ghdl -c [options] file... -r primary_unit [secondary_unit]

This command combines analysis and elaboration: files are analyzed and the unit is then elaborated. However, code is only generated during the elaboration. On Windows the simulation is launched.

To be more precise, the files are first parsed, and then the elaboration drives the analysis. Therefore, there is no analysis order, and you don't need to care about it.

All the units of the files are put into the ‘work’ library. But, the work library is neither read from disk nor saved. Therefore, you must give all the files of the ‘work’ library your design needs.

The advantages over the traditional approach (analyze and then elaborate) are:

However, you should know that currently most of the time is spent in code generation and the analyze and elaborate command generate code for all units needed, even units of ‘std’ and ‘ieee’ libraries. Therefore, according to the design, the time for this command may be higher than the time for the analyze command followed by the elaborate command.

This command is still experimental. In case of problems, you should go back to the traditional way.