我的强大定义是定制的能力.
我熟悉gcc我想尝试MSVC.所以,我在msvc中搜索gcc等效的选项.我找不到很多.
控制输出的种类
Stop after the preprocessing stage; do not run the compiler proper. gcc: -E msvc: ??? Stop after the stage of compilation proper; do not assemble. gcc: -S msvc: ??? Compile or assemble the source files,but do not link. gcc: -c msvc:/c
适用于调试
Print (on standard error output) the commands executed to run the stages of compilation. gcc: -v msvc: ??? Store the usual “temporary” intermediate files permanently; gcc: -save-temps msvc: ???
>有没有某种gcc? msvc编译器选项映射指南?
> gcc Option Summary在每个部分列出比Compiler Options Listed by Category更多的选项.在msvc中遗漏了许多重要而有趣的事情.我缺少某些东西,或者msvc真的比gcc功能更强大.
解决方法
MSVC是一个IDE,gcc只是一个编译器. CL(MSVC编译器)可以执行您从gcc的角度描述的大部分步骤. CL /?给予帮助
例如.
预处理到stdout:
CL /E
编译无链接:
CL /c
生成程序集(不像gcc,但这并不妨碍编译):
CL /Fa
CL真的只是一个编译器,如果你想看看IDE生成什么命令来编译和链接最简单的东西来查看IDE中项目的属性页面的命令行部分. CL不调用单独的预处理器或汇编器,所以没有单独的命令可以看到.
对于-save-temps,IDE会执行单独的编译和链接,从而保留对象文件.要保留预处理器输出和汇编器输出,可以通过IDE启用/ P和/ Fa.
gcc和CL是不同的,但我不会说MSVC缺少“很多”的东西,当然不是你要查找的输出.