1

我在 Visual Studio 2017 中有一个包含大约 10 个 C++ 项目的解决方案。其中一些使用需要我构建浏览信息的后期构建工具。几乎每次我使用非常无用的错误消息进行代码更改时,其中一个都会在 BSCMAKE 步骤上失败。修复它的唯一方法是完全重建该项目。每一次。

如果关闭浏览信息是一种选择,我会这样做。但我不能。

这是错误信息

1>------ Build started: Project: gsaxel, Configuration: Debug x64 ------
1>gsaxel_v15.vcxproj -> C:\Users\jmole\Documents\Dev\GSSdk\x64\Debug\v141\gsaxeld_v141.dll
1>BSCMAKE : error BK1505: cannot read from file 'C:\Users\jmole\Documents\Dev\GSdk\x64\Debug\v141\gsaxeld_v141.bsc'
1>Done building project "gsaxel_v15.vcxproj" -- FAILED.
StopOnFirstBuildError: Build cancelled because project "gsaxel_v15" failed to build.
Build has been canceled.

同样,如果我清理并重建该项目,BSCMAKE 没有问题并且构建良好。但这几乎每次我进行最轻微的代码更改时都会发生。即使它只是链接到一个完全独立的 DLL 中的文件。

我检查过的几件事:

我正在构建此代码的磁盘有 738 GB 可用空间,所以不是因为空间不足。

我尝试关闭增量链接。它没有效果

我尝试在 BSCMAKE 命令行中添加详细(“/v”)选项,但添加的只是关于处理第一个 .SBR 文件的消息

1>Processing: x64\Debug\v141\edgecrispness.sbr ..

但在那之后我得到了同样的 BSCMAKE 错误信息。如果我去删除那个 .SBR 文件并再次构建,它会将它重新编译为 .CPP,重新生成 SBR 并且仍然给我同样的 BSCMAKE 错误。

我什至尝试从项目中完全排除那个源文件。问题仍然存在(我的 BSCMAKE 详细选项刚刚提到它正在处理下一个 .SBR 文件......)

我已经检查了 DLL 中的每个源文件(只有 6 个 .CPP 文件),以验证它们都没有单独覆盖浏览设置 - 或者实际上没有任何其他文件。

有人有什么想法我可以看吗?

4

1 回答 1

1

我有一个类似的问题。在 .vcxproj 文件中,我有一个 AdditionalOptions 部分。一旦我删除它,一切都很好。

于 2020-07-19T20:32:40.023 回答