我也来谈VC6.0安装问题

 
我也来谈VC6.0安装问题
引言:
很多人在使用VC++ 6.0编译的时候出现如下问题:
 
"Compiling... ,Error spawning cl.exe”
 
很多人的选择是重装,但却仍难解决。
 
解决:打开vc界面,点击VC ”TOOLS(工具)" -> "Option(选择)" -> " Directories(目录)”重新设置“Executable Files、Include Files、 Library Files、Source Files”的路径。很多情况可能就一个盘符的不同
 
如果你是按照初始路径安装vc6.0的,路径应为:
executable files:
C:/Program Files/Microsoft Visual Studio/Common/MSDev98/Bin
C:/Program Files/Microsoft Visual Studio/VC98/BIN
C:/Program Files/Microsoft Visual Studio/Common/TOOLS
C:/Program Files/Microsoft Visual Studio/Common/TOOLS/WINNT
 
include files:
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
 
library files:
C:/Program Files/Microsoft Visual Studio/VC98/LIB
C:/Program Files/Microsoft Visual Studio/VC98/MFC/LIB
 
source files:
C:/Program Files/Microsoft Visual Studio/VC98/MFC/SRC
C:/Program Files/Microsoft Visual Studio/VC98/MFC/INCLUDE
C:/Program Files/Microsoft Visual Studio/VC98/ATL/INCLUDE
C:/Program Files/Microsoft Visual Studio/VC98/CRT/SRC
 
以上是该问题的核心,但却不是本文谈的主题,写这篇文章主要是想解释下为什么会这样,表达一下对网友们谈的一些问题的看法
 
根本原因是cl.exe引起的,那我们就先来谈谈它。
“cl.exe”是VC使用真正的编译器(编译程序),其路径在 " VC根目录/VC98/Bin ”下面,
你可以到相应的路径下找到这个应用程序。以上罗列的需要修改的路径中,其实你只要改了
"Microsoft Visual Studio/VC98/BIN”,就可以使vc找到它了。虽然这么简单,问题就解决了,但你未必能编译!毕竟万物都是有联系的,vc又怎么能开这个先例呢?!
         这就涉及到其它目录的作用,学过点儿语言的,一眼就能分辨include,library,source的作用,这里就不在赘叙了。只捡最重要的说(肯定是与cl.exe最亲的了)。
C:/Program Files/Microsoft Visual Studio/Common/MSDev98/Bin中含有mspdb60.dll这个动态链接库,而执行cl.exe必须拥有它才行。读者可以到cl.exe的所在目录里手动执行下它,就会发现它无法执行,系统提示"找不到mspdb60.dll”。(显然它们不是一家的)
 
接着来谈网上的“故事”
         网上的说法可谓五花八门,挑些典型的且记忆犹新的来说吧!
1.       中英文之说
众所周知,存在中文版的vc,所以有说法是中文版本引起的。答案是否定的,首先英文版也会有这种现象(造成原因,后文会解释),其次汉化只是表面汉化(编译反馈的信息基本都是英文,说比例是99%也不过分。很明显,基本停留在菜单级别),不触及核心,此类问题又从何谈起呢?
2.       按钮选择"compile” , "build” , "executable program”
有人说,不要用”compile”,直接后两者就行。有点常识也会知道,肯定不是这回事,build的中已经隐含了compile.不用多说,不攻自破。
3.       环境变量中的Path
这个说法比较像,尤其是联想到java配置编程环境时的问题,所以我考虑得最久。当然它还是不成立的,最直接的解释,vc安装后不会对环境变量做任何修改,就可以直接使用。换个角度再来谈谈,path值主要用于查找程序执行时所需的.dll,在上文我们已经提到如果找不到"mspdb60.dll”,会无法编译,但绝不是此文谈论的。何况vc又不对path干预呢?
 
最离奇的莫过于有人路径改对了,却仍然无效。当然这种说法我看到的少之又少,但还
是决定说一说。首先在我的圈子中,并未发现过这样的问题,所以我很难给予准确的解释。但有这样一个现象值得注意,有人把 "Error executing cl.exe” 误当成了"Error spawning cl.exe"还在“喊冤”,前者完全是因为程序的错误,比如某个变量重复定义了,再如定义结构体模板后没跟分号等等。所以在出现上述情况,请仔细核对。
 
还有人提到,更改路径后,重启vc后路径还原。同上,我还是没碰到过,但我所确定
的是在我的测试中没发生过。有种特例,你在更改路径后,编译程序出现假死(自更改路径至今,还没重启),然后你调用资源管理器kill掉进程(常用vc的人可能会很熟悉这个不是bug的bug),这时你重启路径肯定会是原状,你也肯定知晓其中的123。
 
最后说明下,出现这种问题的原因。
多半在你重装vc时产生,尤其是你只是把从前vc目录的所有文件都删了,然后贸然重装。还要提到的是,即使你把注册表关于vc的数据处理了,你安装新的,它还会找你麻烦。这也是我没想明白的:vc没通过注册表干扰新的安装,那是通过什么呢?(一般程序都是通过注册表限制)
此后,一直在考虑vc怎么做到及怎样避免此类问题。直到昨晚,雅典娜终于眷顾了我。
最好的重装办法是使用官方的卸载程序先卸载,例如通过“添加删除程序”。先别急重装,细心的人会发现卸载不“干净”,还会留下"common”,"my program”(为简便,我省略了它们的上级目录)。首先解释为什么卸不“干净”,这类文件中存放的是用户的编程信息(当然了,前提是使用了程序默认保存路径),也就是你写的程序。防止你没有备份,当然不卸了,很多软件都有此类功能。这也解释了,我的疑问,vc安装时会寻找原有安装目录,如果你没有干得干净,那你重装完就会出现路径问题。
那官方卸载后,这个两个目录不删行不?答案是肯定,你更可方便的用新的vc调用原来的程序。
安装时只会出现:
"A previous installation of Visual SourceSafe was detected at:     X:/Microsoft Visual Studio/Common/VSS/                         Select YES to replace it with VSS 6.0 or NO to install VSS 6.0 to its default location      Y    N"
 
所以放他一马也不为过。
终于散场了…
 
由于时间仓促,水平有限,只能及此。欢迎指正错误,共同成长。
在此感谢宿舍的兄弟们,如果不是阳阳的vc出了问题(我也遇到过,但未做深究,只是改了路径而已),还相当棘手,我想您将看不到此文,感谢阳阳、小华、波波为我提供环境测试相关问题。
                                                                                                              土匪头子_X
                                                             
 
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值