3

我收到了一个新创建的 SDK 的示例应用程序,但我无法编译它 - 由于 ATL 的原因,它根本无法在 Visual Studio Express 中编译,这似乎是 VS 2010 的唯一版本微软仍然提供。所以我试图在 VS 2012 Professional 中编译它,但它给了我错误 LNK2038。从我可以从这个线程收集到的信息,问题归结为尝试在 2012 版本中使用为 2010 编译的 .lib 文件。由于我不是编译 .lib 的人,而且我没有它的代码,而且 VS 2010 无法访问,所以我真的不知道该怎么做,除非原作者重新编译它。有什么建议么?我缺少一些基本的东西?非常感谢您的帮助。

4

1 回答 1

5

库文件不能在不同版本的编译器中重复使用。您将需要执行以下操作之一:

  1. 使用用于创建库文件的相同版本的编译器编译您的项目。
  2. 从代码所有者处获取新的库文件,使用您现在使用的相同编译器进行编译。
  3. 获取库的源代码,并自己编译它们的新版本。
  4. 重写您拥有的代码,使其不依赖于您无法控制的库,因为您的构建环境不允许使用它们。
于 2013-06-24T15:20:49.100 回答