链接到库需要 MFC80U.LIB
Posted
技术标签:
【中文标题】链接到库需要 MFC80U.LIB【英文标题】:Linking to a Library requires MFC80U.LIB 【发布时间】:2010-09-29 09:32:54 【问题描述】:我正在尝试从最新的 SketchUp C++ SDK 编译 SkpWriter 示例。但是,链接器给了我 LNK1104 说找不到“mfc80u.lib”,因为 SDK 中的静态库 (Utils.lib) 之一依赖于一些 MFC 8 库。我用的是VS2008,只有mfc90u.lib可用。
有没有办法使用 mfc90u.lib 代替 mfc80u.lib(除了重命名文件)? MFC 8 DLL 和 LIB 是否可供下载? (为什么使用 VS2005 创建的 DLL 的人也应该安装 VS2005?!!)我的选择是什么?
【问题讨论】:
【参考方案1】:右键单击您的项目、属性、链接器、输入。在“忽略特定库”设置中放入 mfc80u.lib。在“附加依赖项”设置中添加 mfc90u.lib
不能保证这会奏效,但您已经获得了不错的机会。最好的办法是联系 SDK 供应商并要求更新。
【讨论】:
SDK 供应商(一家名为 Google 的公司)对支持这个特定的 SDK 不是很感兴趣,因为它是免费赠送的。 Hmya,免费软件只有在你的时间一文不值的情况下才是免费的。更改设置效果如何? 不太好。 VS 不会将 mfc90u.dll 复制到输出文件夹。我必须手动执行此操作...其次是 msvcr90.dll 的问题。 您不清楚“不保证这会起作用”的哪一部分?【参考方案2】:您可能有 2 个选项: 1.在VS2005中构建你的exe并使用现有的dll。 2.在VS2008中重建你的dll并与你的exe链接。
MFC6 和 MFC9 二进制不兼容,尤其是 CString 和 CWnd,它们在 VC6 和 VC9 中是不同的......
【讨论】:
有些东西可能有用:***.com/questions/2339759/…以上是关于链接到库需要 MFC80U.LIB的主要内容,如果未能解决你的问题,请参考以下文章
将程序链接到库,每个库使用不同的 _GLIBCXX_USE_CXX11_ABI
与使用 MFC 的常规 DLL 链接时,MFC 应用程序断言失败