命令行编译MFC程序(转载)

本文记录了使用命令行编译MFC程序时遇到的各种问题及解决方法,包括环境变量配置、语法错误修正等,为读者提供了一条从零开始的编译之路。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

命令行编译MFC程序(转载)

(2007-03-29 08:50:13)

标签:

dos

mfc

分类: windows
今天在编译《深入浅出MFC》上的hello MFC例子时,遇到了不少问题,现在把我遇到的问题记下来,算是个读书笔记吧。
 
在把书上的代码敲进电脑运行后:
问题一: NMAKE不是内部命令
解决方法: 在环境变量的PATH中加入 C:/Program Files/Microsoft Visual Studio/VC98/Bin。当然这个值根据你的VC6的安装目录做相应改变。
 
问题二: fatal error U1033: syntax error : ':' unexpected Stop
解决方法: hello.mak文件中的 link.exe不能顶格写,至少要空一格,至于原因不太清楚。
 
问题三: fatal error U1007:double quotation mark not allowed in name Stop.
解决方法: 同上,cl.exe、rc.exe之前也要有空格。同样的格式错误却提示不同错误,无语.....并且第一行的hello.exe必须顶格写,不然也会提示错误....
 
问题四: 弹出一个对话框"没有找到mspdb60.dll,因此这个应用程序未能启动。重新安装应用程序可能会修复此问题"。DOS下显示如下错误 NMAKE : fatal error U1077 :'cl.exe' : return code '0xc0000135' Stop.
解决方法: 在环境变量path中加入C:/Program Files/Microsoft Visual Studio/Common/MSDev98/Bin,注意,修改了环境变量后要重新启动MS-DOS,否则不能生效。
 

问题五: stdafx.h(4) : fatal error C1034: afxwin.h: no include path set
NMAKE : fatal error U1077: 'cl.exe' : return code '0x2'
Stop.
解决方法: 由于这里提示没有include路径,所以我们在环境变量中设置以下三个include目录
C:/Program Files/Microsoft Visual Studio/VC98/INCLUDE
C:/Program Files/Microsoft Visual Studio/VC98/MFC/INCLUDE
C:/Program Files/Microsoft Visual Studio/VC98/ATL/INCLUDE

问题六: hello.h(4) : error C2555: 'CMyWinApp::InitInstance' : overriding virtual functio
n differs from 'CWinApp::InitInstance' only by return type or calling convention
解决方法: 原来是CMyWinApp::InitInstance声明中bool用了小写,编译时认为这个与基类的InitInstance函数声明不一样。改成大写就可以了。

问题七: resource.h(2) : fatal error RC1004: unexpected end of file found
解决方法: 在网上下了一个源代码,对比之后拷贝了一个文件结尾就可以了。当然,还要拷贝文件JJHOUR.ICO到工程目录下,不然又会出错,这个图标在网上的源代码里有。

问题八: LINK : fatal error LNK1104: cannot open file "mfc42.lib"
解决方法: 终于轮到设置lib目录了。在环境变量中设置以下两个lib目录
C:/Program Files/Microsoft Visual Studio/VC98/LIB
C:/Program Files/Microsoft Visual Studio/VC98/MFC/LIB

大功告成!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值