ETISS 0.8.0
Extendable Translating Instruction Set Simulator (version 0.8.0)
|
This method has been replaced with an export-all-symbols approach on Windows*.
On some systems there may be problems with the use of Standard Template Library objects due to ABI (aplication binary interface) changes resulting from different compilers, compiler options or defines. For those cases a secondary build system has been integrated into the cmake files that allows to install the headers and source code (ETISS+some plugins). This requires only minimal support from plugin projects. This source installation is the default option on Windows due to a more complicated linking and symbol export/import functionality.
ETISS is not really build in case of the source install option. The build step mainly consists of generation of some files. The INSTALL target will copy all necessary files and invoke any needed build command (e.g. make install or build the INSTALL project in Visual Studio). By default the install path under Windows is "C:\Program Files\ETISS" or "C:\Program Files (x86)\ETISS" and requires e.g. Visual Studio to run with administrator rights. Although the installation mainly consists of source files it is necessary to match target platform to the projects that will use ETISS (e.g. Win32,Win64). The lib folder of the ETISS source installation needs to be added to the search path of applications that use ETISS. A side by side installation of ETISS for different platforms is not recommended nor tested.
Once ETISS is installed it is very simple to use it in other cmake projects. E.g.:
Due to the use of one build environment for all source files of ETISS and plugins it is important that ETISS and plugins don't use the same file names (including relative paths) for header files. Source files may have the same name. In case of duplicated source file name or if the source file is not located in a * /src/*.cpp path the full file path will be used to generate a new file name. The new file name is easily distinguishable by is form (e.g. 4c7c6a766da4ba28229bc2e5d6751b6e185bafd9.cpp)