gpt4 book ai didi

visual-studio - Cmake 更改堆栈大小

转载 作者:行者123 更新时间:2023-12-04 01:57:26 25 4
gpt4 key购买 nike

有没有办法从 Cmake 更改堆栈大小?
我只找到了一个 forum threadCMAKE_CXX_STACK_SIZE但我找不到此命令的文档。理想情况下,该命令应该适用于 Visual Studio C++ 和 gcc。

最佳答案

我目前没有 VS,但以下三个 CMake 命令在 MinGW/GCC 上都适用于我(将 <target> 替换为您输入的内容 add_executable() ):

target_link_libraries(<target> PRIVATE "-Wl,--stack,10000000")

或者
set_target_properties(<target> PROPERTIES LINK_FLAGS -Wl,--stack,10000000)

或者
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--stack,10000000")

注意根据 CMake documentation ,每一个都应该只添加链接器标志,而不是替换任何已经设置的标志。

在 VS 中,看起来您应该替换 -Wl,--stack,/STACK: (更多内容见下文)并使用 if/else 为每个编译器设置不同的命令。

关于 CMAKE_CXX_STACK_SIZE , this thread ,值得一读,说命令是

in the implementation of the VS generator for historical reasons but is not intended as a first-class way to set the stack size. Instead just pass /STACK:... as a linker flag using target_link_libraries, or the LINK_FLAGS target property, or in CMAKE_EXE_LINKER_FLAGS...



这样的命令其实可以在 the page上看到链接在您的帖子(不确定您是否看到它)以及 this one 中:
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /STACK:10000000")

关于visual-studio - Cmake 更改堆栈大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49644273/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com