1. 시작하며
https://blog.encrypted.gg/731?category=773649
이 글을 보면서 공부하다가 스택 사이즈 설정하는 부분에서 윈도우와 방법이 달라서 구글링을 통해 해결했습니다.
저는 맥북 + Visual Studio Code + clang을 사용중입니다.
맥 OS에서는 g++을 입력하여 컴파일하면 자동으로 clang으로 컴파일됩니다.
본인이 따로 설정한적이 없다면 g++을 사용하는것처럼 보여도 clang을 사용하고 있는 것이므로 아래 방법으로 설정하시면 됩니다.
2. clang 스택 크기 설정
test.cpp 코드는 위 글에 나오는 코드를 사용했습니다.
위 사진처럼 컴파일할 때 -Wl,-stack_size -Wl,0x20000000 옵션을 추가하면 됩니다.
옵션 없이 컴파일 후 실행했을 때는 segmentation fault가 발생하지만,
옵션을 추가하면 정상적으로 실행되는 것을 확인할 수 있습니다.
0x20000000부분은 다른 숫자로 바꿔도 됩니다.
제가 참고한 글에서 512MB를 사용하고 있어서 저도 512MB로 예를 들었습니다.
3. 참고
https://clang.llvm.org/docs/CommandGuide/clang.html#cmdoption-wl-args