[[Property:title|Dynamic library: Generated files]]
[[Property:weight|3]]
[[Property:uuid|f3926dd7-eb68-7a82-39f0-b4f5ea891436]]
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 Options|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 DLL
LIBRARY demo.dll
DESCRIPTION DEMO.DLL
The following are EXPORTed functions.
EXPORTS
This part concerns the run-time. It initializes the run-time and reclaim Eiffel objects.
;System
init_rt
reclaim_rt
The exported for the BAR class:
; CLASS [BAR]
get_string
print_bar
The 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.