A single EurekaLog installer supports a wide range of IDEs - starting with Delphi 5 and all the way up to latest RAD Studio version. However, sometimes a single IDE may have different builds (patches). For example, Delphi 7 and Delphi 7.1, RAD Studio 10.3 and 10.3.1, 10.3.2, 10.3.3. All of these different builds is the "same IDE", so one can not have all these minor versions installed on the same machine at the same time. E.g. you can not have Delphi 7 and Delphi 7.1 installed simultaneously. That is why each EurekaLog installer is built only against latest IDE patches (latest available at the release time).
Unfortunately, sometimes IDE patches introduce binary incompatibilities. If you attempt to install/use EurekaLog which was build for a different version of the IDE - you may get errors like "The procedure entry point could not be located", "Unit was compiled with different version", "Could not compile used unit", etc.
This article explains how to recompile EurekaLog for your IDE. This is a brief "how-to" manual, for a detailed explanation on building EurekaLog from sources - see this article.
How to recompile EurekaLog manually (Enterprise edition only)
EurekaLog Enterprise comes with full source code, which you can use to recompile EurekaLog. EurekaLog Enterprise contains additional \Projects\ folder, which contains project files to compile EurekaLog. There are project files for run-time package, design-time packages (IDE expert, component registration) and command-line compiler (ecc32/emake). There are no special projects for EurekaLog itself, because EurekaLog is not application, but a library.
Step 0: [optional] allow modifications to EurekaLog
First, you must allow changes to EurekaLog's files. EurekaLog is installed to Program Files folder by default. This folder allows read-only access for non-admin users. If you are going to recompile EurekaLog from normal user account - you would need to alter permission settings.
The easiest way would be:
This will make all necessary modifications.
Note: don't close the tool yet, you will need it soon: see step 2 below.
Alternatively, you may manually edit permissions for C:\Program Files (x86)\Neos Eureka S.r.l\EurekaLog 7\ folder in Explorer. Add write permissions for normal users.
Finally, you may simply run your IDE under administrative account - without any need to alter permissions.
Step 1: determinate your IDE number
Please, refer to this table to determinate number for your IDE. For example, all versions of RAD Studio 10.3 Rio (that is: 10.3, 10.3.1, 10.3.2, 10.3.3) would be 26 (and would be located in Studio26 folders).
Step 2: unregister installed EurekaLog from IDE
This will not remove/uninstall any of EurekaLog files from C:\Program Files (x86)\Neos Eureka S.r.l\EurekaLog 7\ installation folder.
See also for more details: EurekaLog IDE setup
Step 3: [optional] remove existing precompiled files
While it is not strictly necessary, we recommend to remove existing precompiled files before compiling EurekaLog. This will make diagnostic easier if you made a mistake during compilation. (Mistakes like mixing old an new files).
Delete, move, or rename all files in the following folders:
Adjust paths as necessary. <IDE> is folder for your IDE, which you have found out on step 1 above. <PLATFORM> is platform name like Win32 / Win64. <CONFIG> is build configuration name like Debug / Release. Typically there would be 6 folders with all possible combinations for a single IDE.
Note: you may keep ecc32.exe and ecc32speed.exe untouched if you will not recompile it. ecc32 does not depend on IDE, so it is not necessary to recompile it.
See also for more details: EurekaLog files layout.
Step 4: actual recompilation
Launch your IDE and open EurekaLogGroup.groupproj file from corresponding subfolder in C:\Program Files (x86)\Neos Eureka S.r.l\EurekaLog 7\Projects\ folder. The subfolder name was determined on step 1 above. Build all projects:
Note: EurekaLog contains only Delphi source code (.pas). C++ Builder support is implemented as compilation of Delphi files with C++ Builder. There are no .cpp/.hpp files. All shipped .obj/.o/.hpp/.lib/.a/.bpi files are auto-generated from .pas files. All EurekaLog projects have "Generate C++ files" option turned on. EMake is the same file as ecc32. In fact, ecc32 is the same file for all IDEs.
Step 5: [optional] check that files were created
If you have removed old files on step 3 - now you can check that all of the mentioned folders has been populated with new compiled files.
Important Note: some old IDEs have bugs related to output folders (especially for C++ Builder files). Check that files were created in the correct location. Compare to old layout. Move files if necessary:
Step 6: register recompiled EurekaLog in IDE
This will register new recompiled files in your IDE. Now you can use EurekaLog.