FPC: Fatal: (1009) No memory left if you build Lazarus with a lot of packages
Original Reporter info from Mantis: af0815 @afriess
-
Reporter name: Andi Friess
Original Reporter info from Mantis: af0815 @afriess
- Reporter name: Andi Friess
Description:
Win 10/64 with fpc/32 and Lazarus/32 both trunk
(9015) Linking ..\lazarus.exe
C:\Data\Hugo\Komponenten\Lazarus\ide\lazarus.pp(159,1) Error: (1026) Compilation raised exception internally
Fatal: (1009) No memory left
The Error is not shown with the actual stable fpc 3.0.2. But is raised with any fpc since 35375 and earlier.
Steps to reproduce:
Build Lazarus with realy lot of big packages (spreadsheet, indy, modbus, pascalscada, DSpack, directx, zeos, ...)
--------------
Copyright (c) 1993-2017 by Florian Klaempfl and others
(1002) Target OS: Win32 for i386
(3104) Compiling lazarus.pp
C:\Data\Hugo\Komponenten\Lazarus\ide\lazarus.pp(109,20) Warning: (5044) Symbol "MainFormOnTaskBar" is not portable
(9022) Compiling resource C:\Data\Hugo\Komponenten\Lazarus\units\i386-win32\win32\lazarus.or
(9015) Linking ..\lazarus.exe
C:\Data\Hugo\Komponenten\Lazarus\ide\lazarus.pp(159,1) Error: (1026) Compilation raised exception internally
Fatal: (1009) No memory left
Error: C:\Data\development\fpctrunk\fpc\bin\i386-win32\ppc386.exe returned an error exitcode
make[2]: *** [lazarus.exe] Error 1
make[2]: Leaving directory C:/Data/Hugo/Komponenten/Lazarus/ide'<br/> make[1]: *** [idepkg] Error 2<br/> make[1]: Leaving directory
C:/Data/Hugo/Komponenten/Lazarus/ide'
make: *** [idepkg] Error 2
make: Leaving directory `C:/Data/Hugo/Komponenten/Lazarus'
Additional information:
I have seen CT have fixed it in their FPC-Version
One change is in the pp.pas aroud line 150. Now i patched the actual trunk 35551. Now fpc compiles the 'Big' Lazarus for me.
===============
{$ifdef win32}
{ 256 MB stack }
{ under windows the stack can't grow }
{$MAXSTACKSIZE 256000000}
{$setpeflags $20} //=== ct9999 =============
{$else win32}
{$ifdef win64}
{ 512 MB stack }
{ under windows the stack can't grow }
{$MAXSTACKSIZE 512000000}
{$else win64}
{ 1 MB stack }
{$MINSTACKSIZE 1000000}
{$endif win64}
{$endif win32}
Mantis conversion info:
- Mantis ID: 31517
- OS: Win10 / 64 Pro
- OS Build: Win10 / 64 Pro
- Build: SVN 35551
- Platform: Dell XPS
- Version: 3.1.1
- Fixed in version: 3.1.1
- Fixed in revision: 35564 (#e12e47c0)
- Monitored by: » @afriess (Andi Friess), » @zeljkoavramovic (Zeljko Avramovic)