如何在gcc上使用ubsan(windows 8.1)

为了更好地保护UB案件,例如:

#include <stdio.h> int f(){ int x; return x; } int main() { f(); while(1); return 0; } 

我今天更新了GCC,所以我可以使用ubsan 。 根据gcc --version我目前的版本是5.3.0。 我认为这个更新会增加ubsan,但是看起来这不是因为用C:\Users\my_name\Desktop>gcc -fsanitize=undefined ac这就是我得到的:

c:/mingw/bin/../lib/gcc/mingw32/5.3.0/../../../../ mingw32 / bin / ld.exe:can not fin d -lubsan

现在,我已经看到这个post,但操作系统是Ubuntu 15.04 ,我使用Win 8.1所以没有帮助我。 其中一个评论说:

您需要安装libubsan软件包。

但我不知道这是否意味着windows/ubuntu ,即使是windows用户,我不知道该怎么做。

编辑:我也试着编译gcc -fno-sanitize=all ac (这里有很多选项),而且这个编译没有任何警告,所以我猜GCC以某种方式识别杀毒软件(因为它编译成功),但是拒绝我的原始编译尝试一些原因

Solutions Collecting From Web of "如何在gcc上使用ubsan(windows 8.1)"