Root > Advanced topics > Working with configurations > Different EurekaLog settings for 'Debug' and 'Release' profiles

Different EurekaLog settings for 'Debug' and 'Release' profiles

Previous pageReturn to chapter overviewNext page   

Important Note: Be extra careful when doing batch compilation of projects in project groups, or using external build tools. There are IDE bugs and other issues, which may pass incorrect information to EurekaLog (via OpenTools API in case of IDE). Pay close attention which configuration file is passed to compilers by external build tools. Always double-check the final executables.


This article is supposed to answer on one common question asked by our customers. They want to use different EurekaLog settings for different compilation profiles. This article will explain how to do this.


For example, you want to have leaks checks enabled for Debug (e.g. developer) build configuration, but disabled for Release (e.g. production).


Important Note: This article will discuss the case when you want to have EurekaLog enabled in both Debug and Release profiles, but with different configuration. If you want EurekaLog to be enabled for Debug profile and be disabled for Release profile (or visa versa) - please, see Compiling your project with and without EurekaLog article instead.



EurekaLog stores base project configuration in file with same name as project file. For example, if you have Project1.dpr - then EurekaLog will save base configuration into Project1.eof file. Such file will be used by default in all cases (compilation from IDE, from command-line, etc.).


Additionally, you may manually create individual configurations for each profile (each build configuration). For example: Project1_Debug.eof.


1. First, make sure that EurekaLog is enabled for all desired profiles (build configurations). Typically, you want EurekaLog be enabled for base configuration, which is then inherited by all other build configurations. Refer to this article for more information;
2. (Optional) Configure EurekaLog for your project. Consider this to be a "base configuration". Notice that this configuration will be saved in .eof file with the same name as your project. E.g. Project1.eof for Project1.dpr;
3. Next, configure EurekaLog for one particular build configuration. For example, for 'Debug' build configuration;
4. Use "Export" button to save customized configuration to an external file. The name and path are important. Save file in the same folder as your .dpr file. Name file as YourProject_Profile.eof. For example, if you have Project1.dpr and configured EurekaLog for 'Debug' build configuration - then save EurekaLog configuration to Project1_Debug.eof file in the same folder as Project1.dpr;
5. Repeat steps 3-4 for each configuration which should have different settings;
6. (Optional) If you did not make a separate EurekaLog configuration file for some profile (build configuration) - then make sure that base EurekaLog settings (e.g. stored in Project1.eof) are correct and not altered by the steps above. Reconfigure if necessary;
7. Done.


Now you can build your project in, say, 'Debug' build configuration - and appropriate EurekaLog configuration (from Project1_Debug.eof file) will be used. You can switch build configuration in IDE's project manager and make another build - and a different EurekaLog configuration will be used (for example, from Project1_Release.eof file). If no customized file exists - a base configuration will be used.


Note: there is no inheritance support in EurekaLog's settings.



See also:

Send feedback... Build date: 2018-11-26
Last edited: 2018-06-14
The documentation team uses the feedback submitted to improve the EurekaLog documentation. We do not use your e-mail address for any other purpose. We will remove your e-mail address from our system after the issue you are reporting has been resolved. While we are working to resolve this issue, we may send you an e-mail message to request more information about your feedback. After the issues have been addressed, we may send you an email message to let you know that your feedback has been addressed.

Permanent link to this article: