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

Different EurekaLog settings for 'Debug' and 'Release' build configurations

Previous pageReturn to chapter overviewNext page   

This is a detailed article. If you want a quick practical example, see: How to use different settings for development/production?



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 settings 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 build configurations. 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 build configurations, but with different settings. If you want EurekaLog to be enabled for Debug build configuration and be disabled for Release build configuration (or visa versa) - please, see Compiling your project with and without EurekaLog article instead.



EurekaLog stores base project settings in a .eof file with same name as project file. For example, if you have Project1.dpr - then EurekaLog will save base settings 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 settings for each build configuration. For example: Project1_Debug.eof.


1. First, make sure that EurekaLog is enabled for all desired 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 "base settings". Notice that these settings will be saved in the .eof file with the same name as your project. E.g. Project1.eof for Project1.dpr. Close dialog via "OK" button to save base settings to Project1.eof file;
3. Next, configure EurekaLog for one particular build configuration. For example, for 'Debug' build configuration;
4. Use "Export" button to save customized settings to an external file. The name and path are important. Save file in the same folder as your .dpr file. Name file as YourProject_BuildConfiguration.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 build configuration which should have different settings;
6. Close dialog via "Cancel" button to avoid saving settings to the Project1.eof file;
7. (Optional) If you did not make a separate EurekaLog settings file for some 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;
8. Done.


Now you can build your project in, say, 'Debug' build configuration - and appropriate EurekaLog settings (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 settings will be used (for example, from Project1_Release.eof file). If no customized .eof file exists - base settings (from Project1.eof file) will be used.


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


Important: do not forget to make a full project rebuild (not just compile) when you have switched active build configuration.



See also:

Send feedback... Build date: 2023-09-11
Last edited: 2023-03-07
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: