有关无法打开预编译头文件错误的思考
2015-09-25 22:50
281 查看
作者:朱金灿
来源:http://blog.csdn.net/clever101
以前时不时遇到有关无法打开预编译头文件的错误,具体错误信息大致如下:
fatal error C1083: 无法打开预编译头文件:“Debug/UGFace.pch”: No such file or directory
以前总是想不明白为何出现这个错误。今天同事又问我这个问题,在一刹那我突然想明白了这个问题。
我的思考过程是这样的:既然错误提示是UGFace.pch不存在,那么就是说它没有生成。那么问题来了,为什么UGFace.pch没有生成,它又是由哪个文件生成的呢?我们知道预编译头文件主要是将系统库(如Windows SDK)的常用头文件都放到一个头文件stdafx.h里包含,那么xxx.pch就是通过stdafx.cpp生成的。而stdafx.cpp没有生成xxx.pch是因为没有设置它的属性为创建预编译头,实际上很多时候不知为何把它设为了使用预编译头。因此需要在stdafx.cpp的属性设置中将它设为创建预编译头,具体如下图:
注意工程的预编译头属性还是使用预编译头,网上很多以讹传讹的文章说是把工程属性改为不使用预编译头,应该说这种办法也能解决问题,但毫无疑问没有使用预编译头会大大降低编译效率。
来源:http://blog.csdn.net/clever101
以前时不时遇到有关无法打开预编译头文件的错误,具体错误信息大致如下:
fatal error C1083: 无法打开预编译头文件:“Debug/UGFace.pch”: No such file or directory
以前总是想不明白为何出现这个错误。今天同事又问我这个问题,在一刹那我突然想明白了这个问题。
我的思考过程是这样的:既然错误提示是UGFace.pch不存在,那么就是说它没有生成。那么问题来了,为什么UGFace.pch没有生成,它又是由哪个文件生成的呢?我们知道预编译头文件主要是将系统库(如Windows SDK)的常用头文件都放到一个头文件stdafx.h里包含,那么xxx.pch就是通过stdafx.cpp生成的。而stdafx.cpp没有生成xxx.pch是因为没有设置它的属性为创建预编译头,实际上很多时候不知为何把它设为了使用预编译头。因此需要在stdafx.cpp的属性设置中将它设为创建预编译头,具体如下图:
注意工程的预编译头属性还是使用预编译头,网上很多以讹传讹的文章说是把工程属性改为不使用预编译头,应该说这种办法也能解决问题,但毫无疑问没有使用预编译头会大大降低编译效率。
相关文章推荐
- netbeans中表格使用1
- (php)输出杨辉三角
- hdu4731Minimum palindrome 构造
- 文本
- 有关无法打开预编译头文件错误的思考
- bootstrap.css和esayUi.css样式冲突的解决
- 并发3
- CodeForce 2A Winner
- System Center VMM评估版过期的处理
- 笔试最长子数组和最大子矩阵c#
- noip2010 导弹拦截 (贪心)
- AlarmManager
- ListView的9个重要属性
- hdu4740The Donkey of Gui Zhou dfs水题
- ZOJ-2477 Magic Cube
- 专业实训题目需求分析
- 大话设计模式笔记 建造者模式
- 黑马程序员——JAVA之面向对象(一)
- 字符串右移
- 类似于微信的在一个Activity中界面的相互切换