Wie die gcc ausführbare Stack-Größe zu erhöhen?
-
18-09-2019 - |
Frage
Ich habe großen Boost-/ Spirit Metaprogramm, die gcc-Stack bläst, wenn ich versuche, es zu kompilieren.
Wie kann ich erhöhen Stackgröße des gcc, so kann ich dieses Programm kompilieren?
Hinweis: Es gibt keine unendliche Rekursion los, aber es genug zufällige Rekursion ist gcc Stack erschöpfen
.Lösung
Unter Linux können Sie die Stapelgröße in /etc/security/limits.conf erweitern.
Sie können Ihre aktuelle Stack-Größe überprüfen, indem Sie mit
$ ulimit -s
8192
Erweitern Sie dann den Stapel auf das Doppelte sein, als das:
youruser soft stack 16384
Und dann Relog.
Dies wird Stack-Größe für alle ausführbaren erhöhen Sie laufen, nicht nur GCC.
Andere Tipps
ich, dass in meinem Compiler Skript:
CFLAGS + = -Wl, - Stapel, 10485760
Die Stapelgröße kann während der Verknüpfung konfiguriert werden. Sie sollten in Bezug auf die Linker-Skripte auf Details sehen. Das wird nur die Stapelgröße für einzelnes Programm ändern.