错误LNK1104:无法打开文件'mfc90.lib'

问题描述 投票:0回答:2

我正在使用Visual Studio 2012 Professional,我的项目引用了使用VS2008构建的静态库(v90)。当我使用VS2012(v110)构建时,

error LNK1104: cannot open file 'mfc90.lib'

发生错误。 这是修复此问题以更改平台工具集的唯一方法吗?我认为这不是我的解决方案,因为我应该以.NET Framework 4.5为目标。 (我知道我不能在v90上使用.NET Framework 4.0。如果错误,请更正我) 请告诉我在VS2012项目中如何使用VS2008构建的库。 提前致谢! PS。如果更改平台工具集是解决问题的唯一方法,那么如何引用使用各种visual studio编译器构建的多个库?(例如,使用vs2008,vs2010和vs2012构建)

编辑:我正在为第三方库(Native C ++)编写一个包装程序,以便在.NET Framework上运行。问题是我应该使用VS2012构建,但是使用VS2008构建的库需要mfc90.lib(VS2012中不包含)

visual-studio
2个回答
1
投票

我能够通过链接到mfc110.lib而不是mfc90.lib让我的项目在vs2012中构建(从vs2008转换)


0
投票

我不认为MFC库与您定位的.NET Framework版本有任何关系。 VS2012会有类似mfc110.lib的东西,这可能就是你应该使用的东西。如果要使用mfc90.lib,它应该在以下文件夹中:

C:\ Program Files \ Microsoft Visual Studio 9.0 \ VC \ atlmfc \ lib

当然,您需要为此文件夹安装VS2008才能存在。

但VS2012不会在该文件夹中查找库依赖项,因此您需要在“配置属性”中指定完整路径链接器|输入|额外的依赖关系。

© www.soinside.com 2019 - 2024. All rights reserved.