Question

J'ai grand métaprogramme Boost / Esprit qui souffle la pile de gcc lorsque je tente de le compiler.

Comment puis-je augmenter la taille de la pile de gcc, donc je peux compiler ce programme?

Note: Il n'y a pas récursion infinie en cours, mais il y a suffisamment récursion accessoire pour épuiser la pile de gcc

.
Était-ce utile?

La solution

Sur Linux, vous pouvez augmenter la taille de la pile dans /etc/security/limits.conf.

Vous pouvez vérifier votre taille de la pile actuelle en utilisant

$ ulimit -s
8192

Ensuite, développez la pile pour être le double de ce qui suit:

youruser    soft    stack    16384

Et puis relog.

Ceci augmentera la taille de la pile pour tous les exécutables que vous utilisez, et pas seulement GCC.

Autres conseils

Je l'utilise dans mon script compilateur:

  

CFLAGS + = -Wl, - pile, 10485760

La taille de la pile peut être configuré pendant la liaison. Vous devriez consulter les détails concernant les scripts de liaison. Cela ne fera que changer la taille de la pile pour votre seul programme.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top