我正在尝试使用clang-3.7(也尝试过3.8(dev))和-fsanitize = safe-stack标志编译一个简单的hello-world可执行文件。如此处所述(http://clang.llvm.org/docs/SafeStack.html),我需要将此标志传递给编译器和链接器。
“要启用SafeStack,只需将-fsanitize = safe-stack标志传递给编译和链接命令行。”
我尝试了以下命令来编译可执行文件:
“要启用SafeStack,只需将-fsanitize = safe-stack标志传递给编译和链接命令行。”
我尝试了以下命令来编译可执行文件:
clang-3.7 -fsanitize=safe-stack -o a.out -Wl,-fsanitize=safe-stack test.c
但是链接器告诉我,如果我向链接器传递-f标志,则需要将其编译为共享库(-shared)。
/usr/bin/ld: -f may not be used without -shared
我该如何使用-fsanitize=safe-stack标志编译可执行文件?