Установка размера стека в cmake с помощью gcc - PullRequest
0 голосов
/ 27 марта 2020

Я строю проект C ++ на Linux, используя g cc 9.2 и cmake 3.15 , и мне нужно увеличить размер стека по умолчанию. Я нашел много ответов раньше, но ни один из них, кажется, не работает

set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--stack,1000000")
message(${CMAKE_CXX_COMPILER_ID})
message(${CMAKE_EXE_LINKER_FLAGS})

Это дает ошибку:

/usr/bin/ld: unrecognized option '--stack'
/usr/bin/ld: use the --help option for usage information

Я вижу, что аргумент действительно передается в выводе cmake:

GNU
-Wl,--stack,1000000

И этот следующий флаг, кажется, вообще не существует.

set(CMAKE_CXX_STACK_SIZE 1000000)

1 Ответ

1 голос
/ 27 марта 2020

решаемая. Спасибо за комментарий @squareskittles. Должно быть:

set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,-z,stack-size=1000000")
...