Services and Modeling for Embedded Software Development
Embecosm divider strip
Prev  Next

A.1.  Configuring and Building

The software is built in its own directory, thus avoiding contaminating the source with the built programs. Assuming that the programs have been downloaded and unpacked in a directory named esp1-tlm2-or1ksim-examples-2.0, then configuration and building is achieved as follows.

mkdir build
cd build
../esp1-tlm2-or1ksim-examples-2.0/configure options
make
	

This will build all the SystemC models and the OpenRISC 1000 examples.

A number of options to configure are essential to correct building.

--target=or32-elf

This specifies the target for the cross compiler used to compile the OpenRISC 1000 programs. Normally this is or32-elf. However an alternative may be required for custom compiler tool chains.

--with-or1ksim=dirname

dirname is the directory where the Or1ksim libraries have been installed. If this is not specified, then the value of the environment variable OR1KSIM_HOME will be used instead. If that is not defined, then the configuration will fail with an error message.

--with-systemc=dirname>

dirname is the directory of the SystemC installation. If this is not specified, then the value of the environment variable SYSTEMC will be used instead. If that is not defined, then the configuration will fail with an error message.

Since it is normal to have SYSTEMC defined if it is installed, this option is usually not needed.

--with-tlm=dirname>

dirname is the directory of the SystemC TLM 2.0 installation. If this is not specified, then the value of the environment variable TLM_HOME will be used instead. If that is not defined, then the configuration will fail with an error message.

Since it is normal to have TLM_HOME defined if TLM 2.0 is installed, this option is usually not needed.

There are a wide range of other generic options available to control configuration. These are seldom used, but can be seen by using the following command.

../configure --help
	

The code is documented throughout with doxygen;. The documentation can be generated by using the following command after configuration.

make doxygen
	
Embecosm divider strip