【问题标题】:Constant LNK1104 errors in VS 2017 projectVS 2017 项目中的恒定 LNK1104 错误
【发布时间】:2018-11-19 08:17:01
【问题描述】:

我有这个巨大的非常古老的 C++ 项目,我正在使用 VS 2013 编译器和 Incredibuild 使用 Visual Studio 2017 构建。

在构建项目时,我经常遇到 LNK1104 链接器错误,即无法打开输出文件。如果我在收到错误后再次构建,则链接此项目可以正常工作,但我会在解决方案中的下一个项目中遇到相同的错误。

有时不会发生此错误,并且整个解决方案都可以正常构建,而有时我会遇到此错误十几次,直到构建完所有项目。

看起来 VS 正在阻止自己,但我不知道在哪里看,到目前为止也没有找到很多有用的线索。但这让我发疯了。

【问题讨论】:

  • 对于我们这些不知道LNK1104 是什么错误的人,this reference 说它是“链接器无法打开指定的文件。”
  • 出于可能的原因,IncrediBuild 似乎并行(和分布式)构建多个目标文件。也许项目依赖项设置不正确,因此系统在构建所有目标文件之前尝试链接?是否可以禁用它?如果是这样,它可以解决问题吗?
  • Incredibuild 中有一个并行链接选项处于活动状态。我对它进行了deaktivated,如果它有所作为,我会尝试。 PS:我忘了提的是,打不开的文件始终是当前正在构建的文件。

标签: c++ visual-studio linker incredibuild


【解决方案1】:

我在使用 Incredibuild 时遇到过类似问题,这始终是以下两个原因之一:

  • 我的项目构建顺序错误,所以我最终尝试链接到尚未构建的 lib/dll
  • 我计算机上其他地方正在运行的程序已经在使用我尝试构建的 dll/exe 之一

尝试通过在解决方案>>项目依赖>>依赖项中设置每个项目的依赖项来查看您的构建顺序

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-25
    • 2018-10-07
    • 2019-05-21
    • 2019-02-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多