Dynamic library: Generated files

Once the Eiffel definition file is created, the compiler will generate a set of files and will compile them to generate the Dynamic library into the EIFGENs/target_name/W_code or EIFGENs/target_name/F_code directory.

Note: To generate and compile these files, you have to indicate the definition file that should be used in the advanced node of the project settings of your system. This way EiffelStudio will know which one to use. If you do not specify any definition file, nothing will be generated.

The set of files is composed of:

  • EIFGENs/target_name/W_code/system.def (or F_code)
  • EIFGENs/target_name/W_code/edynlib.c (or F_code)
  • $(ISE_EIFFEL)/studio/config/$(ISE_PLATFORM)/templates/egc_dynlib.template

this file will be copied during the compilation into the EIFGENs/target_name/W_code/E1 directory as egc_dynlib.c

  • $(ISE_EIFFEL)/studio/spec/$(ISE_PLATFORM)/include/egc_dynlib.h
  • and the Makefile

The system.def is only used on windows, it is the definition file used to generate a DLL when linking.
Information about the DLLLIBRARY demo.dll DESCRIPTION DEMO.DLLThe following are EXPORTed functions.EXPORTSThis part concerns the run-time. It initializes the run-time and reclaim Eiffel objects.;System init_rt reclaim_rtThe exported for the BAR class:; CLASS [BAR] get_string print_barThe exported for the ROOT_CLASS class:; CLASS [ROOT_CLASS] make foo test_bar

The edynlib.c file is the interface between the Eiffel system and the C code. It contains the declaration and the implementation of the function used to directly call the eiffel feature with its real name.

The egc_dynlib.c and egc_dynlib.h files are used for operations performed by the run-time.