使用mingw编译时增加堆栈大小?
我正在编写一个递归洪水填充算法来查找图像中的连接组件,我的代码在 MSVC 2008 编译器中编译和运行良好;但是 mingw 编译的二进制文件在运行时崩溃了.
I'm writing a recursive flood-fill algorithm to find connected components in an image, my code compiles and runs well with MSVC 2008 compiler; but the mingw-compiled binary crashed at runtime.
在我使用 std::stack 将算法转换为非递归后,一切顺利.
After I converted the algorithm to non-recursive with std::stack, everything goes well.
但是如果我在某些情况下必须使用递归算法,而 mingw 无法处理呢?
But what if I must use recursive algorithm in some case, and mingw cannot handle it?
如何增加二进制文件的堆栈大小,是否有任何编译选项?
How can I increased stack size of a binary, is there any compilation options?
谢谢
推荐答案
使用
gcc -Wl,--stack,N
其中 N 是堆栈大小.例如.gcc -Wl,--stack,4194304
where N is stack size. E.g. gcc -Wl,--stack,4194304
相关文章