我已经用Visual C++ Express 2010编译了一个静态库。该库可以用于例如Visual Studio 2013(使用C++)?
lb3vh1jj1#
一般来说,不能。静态库只能与使用相同编译器版本和基本相同设置构建的项目一起使用。例如,即使使用相同的VC版本,也不能将使用调试配置构建的库与使用发布构建的另一个模块组合在一起,反之亦然。既然你说你已经编译了这个库,这意味着你有它的源代码。为什么不直接用VC2013重新编译它呢?
tzcvj98z2#
这一点后来发生了变化:使用Visual Studio 2015或更高版本生成的二进制文件可用于任何更新的Visual Studio版本。请参见https://learn.microsoft.com/en-us/cpp/porting/binary-compat-2015-2017?view=msvc-170
2条答案
按热度按时间lb3vh1jj1#
一般来说,不能。静态库只能与使用相同编译器版本和基本相同设置构建的项目一起使用。例如,即使使用相同的VC版本,也不能将使用调试配置构建的库与使用发布构建的另一个模块组合在一起,反之亦然。
既然你说你已经编译了这个库,这意味着你有它的源代码。为什么不直接用VC2013重新编译它呢?
tzcvj98z2#
这一点后来发生了变化:使用Visual Studio 2015或更高版本生成的二进制文件可用于任何更新的Visual Studio版本。请参见https://learn.microsoft.com/en-us/cpp/porting/binary-compat-2015-2017?view=msvc-170