在没有运行时库/ MFC的情况下从VS08 / 10编译C ++

时间:2010-05-05 22:02:36

标签: c++ runtime

我是否可以在Visual Studio中调整设置,以便它不会使用任何运行时库或MFC进行编译。我开始学习C ++来摆脱C#的.Net,这也差一点。当我在Windows XP虚拟机中执行程序时,出现错误。我可以在没有Code :: Blocks中的依赖项的情况下进行编译,但是我对VS更熟悉,并且更喜欢它的许多功能而不是Code :: Blocks。如果你知道要通过这个,我将不胜感激。感谢。

2 个答案:

答案 0 :(得分:4)

您只需链接到CRT的静态版本;只需进入项目属性并为 Release 配置指定“多线程(/ MT)”CRT而不是“多线程DLL(/ MD)”(您可以单独保留调试配置,因为你无论如何都会在你的机器上运行它。通过这种方式,您的可执行文件将仅依赖于“安全”系统dll;显然这会使你的可执行文件增长很多(例如,我需要工作的小型控制台应用程序,没有依赖关系从大约32 KB增加到大约200 KB)。

如果你只是想在没有任何标准库的情况下,你必须启用“忽略默认库”选项(或类似的东西,在链接器选项中),但是请记住,通过这种方式,您几乎不会有任何设施。

答案 1 :(得分:0)

您没有说明您尝试生成哪种可执行文件。是命令行,Windows winforms等吗?

您还可以查看用于C ++项目的NetBeans和Eclipse IDE。