注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

mie

 
 
 

日志

 
 

VC 2010编译错误:fatal error LNK1104: 无法打开文件“CAClient.lib”  

2010-12-04 16:38:25|  分类: 编译错误 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
错误信息:fatal error LNK1104: 无法打开文件“CAClient.lib”
原因和解决方法:
我在CAClient工程中设置CANetwork为其工程依赖项,在CANetwork中又链接CAClient.lib。结果是,VC首先编译CAClient工程,编译时,发现依赖项CANetwork,就暂停了CAClient工程,转去编译CANetwork。而CANetwork又链接了CAClient.lib,此时CAClient.lib还没有生成,所以CANetwork编译失败。之后CAClient工程继续编译,找不到CANetwork.lib,也编译失败!

解决方法:修正依赖和链接规则,去除CANetwork的错误链接CAClient.lib,ok!

By:zhanyonhu

附录:MSDN 2010关于LNK1104错误的解释
链接器工具错误 LNK1104

错误消息

无法打开文件“filename”

工具未能打开给定的文件。

通过检查下面的可能原因进行修复:

  • 磁盘空间不足。

  • 文件不存在。

  • 在项目的“属性页”对话框中指定库时,应该用空格(而不是逗号)分隔库名称。

  • 文件名或路径不正确。

  • 驱动器规范无效。

  • 文件权限不足。

  • filename 的路径扩展到超过 260 个字符。

  • 如果给定文件的名称是 LNKn(这是链接器为临时文件生成的文件名),则 TMP 环境变量中指定的目录可能不存在,或是为 TMP 环境变量指定了多个目录。 (应只为 TMP 环境变量指定一个目录路径。)

  • 如果该错误信息是因为库名引起的,并且您刚从早期的 Microsoft Visual C++ 开发系统移植 .mak 文件,则该库可能不再有效。请确保此情况下该库仍然存在。

  • 其他程序可能打开了该文件并且链接器不能写入它。

  • 不正确的 LIB 环境变量。有关如何更新 LIB 环境变量的信息,请参见 VC++ Directories, Projects and Solutions, Options Dialog Box确保在此处列出了具有所需库的所有目录。

链接器在某些情况下使用临时文件。即使有足够的磁盘空间,但一个非常大的链接仍可以耗尽地址空间或将其分成许多碎片。

通过使用下面可能的解决方案进行修复

  • 使用 /OPT(优化);消除可传递的 comdat 可多次读取所有对象文件。

  • 升级到 Windows XP。

  评论这张
 
阅读(2132)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016