Knowledgebase: Compilation
6.x: I get "Out of memory" errors when building my (large) project
Posted by Aleksandr Alekseev on 14 January 2012 00:19
|
|
Problem: When I build my project in Delphi or C++ Builder IDE - I get "Out of memory" error message. Explanation: Building your project with EurekaLog means that your project must be post-processed by EurekaLog. EurekaLog should insert options and debug information in your executable file (compiled project). Project's compilation as well as project's post-processing is done inside IDE. Which means that compilation and post-processing will use the resources of IDE process. IDE hosts your project, source code, editor, components, packages, IDE experts, system DLLs, code completion cache, and many other things. A 32-bit process is limited to 2 Gb of address space ("memory"). Delphi or C++ Builder IDE are 32-bit applications. So, Delphi and C++ Builder IDE are limited to 2 Gb of code and data. Thus, if you have many components or IDE extensions installed ("code") and your project(s) is large ("data") - then IDE may have no space available to complete compilation and/or post-processing. That's why you see "Out of memory" error message. Note: 2 Gb limit does NOT depend on your installed RAM memory or operating system bitness - it's always 2 Gb. This limit holds if you have 512 Mb of physical memory installed on 32-bit Windows XP. And this limit holds if you have 8 Gb of physical memory installed on 64-bit Windows 7. Workaround: Uninstall unused packages, components, IDE extensions. If you opened a project group - try to close it, restart IDE, then open and build each project one-by-one. Solution: 1. Quick and simple: go to "Project"/"EurekaLog project options" IDE menu item, switch to "Build Options" tab and enable the "Use EurekaLog 7 compiler" checkbox. To know more about possible advantages and drawbacks of this method - please see this article. 2. Alternatively, you use another method:
Checked EL version: 6.x. | |
|