Boyuan's Research Blog分享 http://blog.sciencenet.cn/u/tyfbyfby My homepage: www.patternrecognition.cn/~fengboyuan/

博文

VS2012 (2008,2010) 编译问题解决合集

已有 7122 次阅读 2013-10-31 14:36 |个人分类:windows工具|系统分类:科研笔记|关键词:学者| 编译, 问题解决, VS2012

问题一:

VS2012 (包括从VS2008,VS2010) 出现编译错误:LINK : fatal error LNK1104: cannot open file 'LIBC.lib' 的解决办法:

在Project-->Setting-->Linker-->Command Line-->Additional options中加入:  /nodefaultlib:libc


问题二:

如果遇到 error LNK2026: module unsafe for SAFESEH image 错误,则

在项目的“属性页”中找到“链接器”标签,然后点击“命令行”将/SAFESEH:NO添加到“附加选项”的框中,点击应用即可。


问题三:
VS2012编译速度太慢: 在项目属性里设置“启用多处理器编译”


依次打开项目“属性“==》”配置属性“==》”C/C++(或其它语言)“==》”常规“,最后一项,多处理器编译选择是。同时MP选项和GM冲突,需要在“Code Generation”中关闭Enable Minimal Rebuild.



官方解释(http://technet.microsoft.com/zh-cn/sysinternals/bb385193)如下:

       /MP 选项在命令行上以减少总时间编译源文件。/MP 选项使编译器创建一个或多个自身的副本,每个副本都位于单独的进程中。然后这些副本同时编译源文件。因此,可显著减少生成源文件的总时间。


问题四:

修改编程窗口字体大小

选择菜单栏的工具->选项->环境->字体和颜色就可以进行设置


问题五:

使用vs2012配置opencv编译出现fopen错误

解决方法:

项目属性页C/C++下得预处理器:添加_CRT_SECURE_NO_WARNINGS



问题六:

warning LNK4099: PDB 'vc100.pdb' was not found问题

问题产生的原因就是由于一个Solution下单多个Project是分开编译的,主项目和子项目的pdb文件名相同(默认都是vc90.pdb或vc100.pdb)从而造成冲突。这个问题对程序的执行不会产生影响,但会导致丢失部分调试信息。

在网上搜到解决办法,修改pdb文件设置的路径和名称。


解决方案:在工程属性页 配置 release 平台 活动(win32)设置:

配置属性 -> 链接器 -> 调试 -> 生成调试信息 -> 否





https://m.sciencenet.cn/blog-702148-737765.html

上一篇:最近常遇到的数学符号缩写
下一篇:绝对可行的VC++6.0 Windows7 x64 Debug调试模式 崩溃 解决方案

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-6-2 21:41

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部