我有一个包含多个项目的解决方案。其中一些项目共享源文件。我已经设置了我的项目树,以便共享源文件的项目在一起。我的问题是,当我清理并构建共享源文件时,会为每个项目重新编译,而不仅仅是第一个使用它们的项目。结果是初始构建花费的时间比它应该的要长,我必须多次构建才能满足所有依赖项(重新链接是必要的。)该项目是 gcc 项目的一个端口,它使用了一系列 make文件来执行构建。make 文件不会重复编译。有没有办法处理上述情况,以便在 Visual Studio 中满足预期的依赖关系?问题是由于源文件与 .idb 和 .pdb 文件之间的依赖关系造成的吗?
更新:我真正需要的是一种方法来告诉 VS 对具有不同 DLL 和 LIB 名称的相同 obj 文件执行重新链接。我可以通过在重新链接项目中包含 .obj 文件来使其工作,但无法弄清楚如何创建调试/发布版本。在项目文件的部分中,$(IntDir) 似乎没有被解析。所以...
在项目1
file1.c file2.c file3.c 链接到 dll1.dll,dll1.lib
然后在项目 2 中,来自 project1 的目标文件再次链接到 dll2.dll,dll2.lib
项目3同样的事情。等等
我也在 MS 论坛上发布了这个,但还没有收到答案。