我正在寻找一些依赖问题的帮助。简而言之,我在一个更大的VC ++工作区中包含了一个makefile项目,但子项目总是会重建,即使它没有必要。
我继承了一个包含几个不同模块的大型项目,包括(主要)Visual C ++ 6.0可执行文件和较小的Visual Basic 6.0 DLL。
今天,它是通过启动每个IDE并从其自己的环境生成每个组件来手动构建的。我想将其转换为VC ++ IDE中的一键式构建。 (最终目标是导出makefile,自动化整个过程,并建立夜间构建。)
为此,我在VC ++工作区中添加了一个“Makefile”项目。 makefile通过从命令行调用VB编译器来构建VB DLL。
问题是VB项目总是重建自己,为构建过程增加了几分钟。我想通过将所有VB源文件添加为依赖项可以避免这种情况,但这可能会变成维护问题,因为每次VB组件更改时都需要开发人员更新VC ++工作区。
有没有办法让构建过程更具选择性,因此VB仅在重建DLL 需要时运行,而不是将每个源文件作为依赖项添加到VC ++项目中吗
感谢您的想法!
答案 0 :(得分:1)
您可以自己进行依赖扫描。仅当任何VB源文件比VB-build的构建输出更新时才触发VB构建(您可以使用通配符递归扫描,即没有显式配置)。您可能需要另外注意VB项目使用的引用。
这当然需要一些手动的make-file写作。由于VB6似乎不支持任何依赖性检查本身,我想不出任何纯粹的基于IDE的解决方案(不需要你提到的双重记录)。
由于您刚刚开始为VB项目实施夜间构建,这似乎表明该项目可能在开发/维护较长时间。这个较长的时间本身可能表明将VB项目移植到VB.NET,这大大改善了VB项目的构建过程。