我已经使用
this作为参考,但它似乎并不完整.当我设置/ NODEFAULTLIB时,我得到关于缺少__except_list,__ load_config_used以及一些显然与SEH相关的其他事情的链接器错误.很容易得到_CxxThrowException和朋友正确链接,但我不知道__except_list应该是什么,我不知道从哪里开始寻找.
我正在使用MSC和IC.使用IC时,链接器将__except_list报告为缺失,但MSC不是这种情况.
对于那些最喜欢的答案是“为什么?”:这是因为我想知道它是如何工作的,而且我已经厌倦了无所事事的测试应用程序开始生活300kb绝对没有理由.
最佳答案 如果你想摆脱CRT依赖,那么将/ Zl选项传递给编译器.链接器不需要任何特殊选项(编译器不会插入
/ DEFAULTLIB:…进入.drectve部分,因此链接器不会将您的EXE绑定到任何CRT).
当然,您不应该在代码中使用C异常或堆;或者您需要提供用汇编语言编写的自己版本的库函数.