代码之家  ›  专栏  ›  技术社区  ›  dahpgjgamgan

你知道有没有对并行化有适当支持的构建系统?

  •  2
  • dahpgjgamgan  · 技术社区  · 16 年前

    我正在寻找一个构建系统(在MS Windows上工作),它对任务/目标(或您称之为任务/目标)的并行化有很好的支持。更具体地说,在构建期间(在MS Windows计算机上启动),我需要将源文件复制到多台不同的计算机(这些计算机不一定运行Windows),并在每台计算机上启动一个远程作业,我真的很喜欢在所有计算机上同时执行此操作。有人知道一个构建系统能够并行地执行这样的任务吗?

    从我的搜索结果来看,当前可用的选项有:
    -J切换到make-但我不知道nmake是否支持这个
    -一些定制的南特任务
    -msbuild对并行化有某种形式的支持——看起来很相似(也就是说,您不需要指定要并行执行的操作,只需指定以这种方式构建东西就可以了)
    -Fake(f make)是用函数式编程语言编写的,众所周知,它有很好的并行化支持——但我在函数式编程领域不是很熟练。
    -TeamCity对这类产品有很好的支持,但这有点“重工具”(也太贵了)

    我还可以探索其他的解决方案吗?

    4 回复  |  直到 11 年前
        2
  •  1
  •   Achilles    16 年前

    CruiseControl.net支持并行构建,但您需要注意的是,并行构建只在正在构建的项目不高度依赖共享资源(如文件和其他项目)的情况下工作良好。构建过程通常会锁定其他并行构建可能试图删除的文件。这可能会由于“非代码”原因导致生成失败。

        3
  •  1
  •   Kim    11 年前

    FastBuild 声称是一个高度优化的系统,用于在多台机器上为Windows和其他平台分发构建。不过我自己还没试过。

        4
  •  0
  •   High Performance Mark    16 年前

    我希望你能做你想做的事 SCons 但是如果你不了解python,那么你的努力可能就不值得了。如果你这样做了,那就另当别论了。