如何增加 Solaris 上使用 scons 构建的可执行文件的堆栈大小?

发布于 2024-08-31 19:46:35 字数 103 浏览 3 评论 0原文

我正在使用 scons 并尝试编译一个需要更大堆栈大小的程序,但我不知道如何扩展堆栈大小。这是在Solaris机器上,我们使用scons来编译我们的项目。

有人知道该怎么做吗?

I am working with scons and am trying to compile a program that require bigger stack size but I dont know how to extend the stack size. This is on a solaris machine, and we use scons to compile our projects.

Anyone know how to do this ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

春夜浅 2024-09-07 19:46:35

在执行程序之前,您可以在 shell(ksh 示例)中使用 ulimit -s。您可能需要提升权限才能更改它。

您还可以以编程方式使用 setrlimit ,但从手册页来看,它不会调整当前正在运行的进程,因此它可能对您的需求没有帮助。

还要考虑您的程序需要更大的堆栈大小。有没有办法改变你的设计,使其更加堆栈友好? Solaris 默认值似乎是 10M,这是一个相当大的堆栈。

In the shell (ksh example) prior to executing your program you can use ulimit -s <size in kbytes>. You may need elevated privileges to change it.

You can also use setrlimit programmatically but from the man page it won't adjust the currently running process so it's probably not helpful for your needs.

Also consider what about your program needs the larger stack size. Is there a way you can change your design to be more stack friendly? The Solaris default seems to be 10M which is a fairly large stack.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文