【问题标题】:Are there any libraries/frameworks for SCons?SCons 是否有任何库/框架?
【发布时间】:2009-02-06 17:22:30
【问题描述】:

每个使用 SCons 的项目似乎都在重新发明轮子。 我很乐意采用某人的目录布局,和/或变体构建(调试/发布)的解决方案,和/或测试框架,和/或最佳实践。

即使是几个不太简单的例子也会有所帮助。

【问题讨论】:

    标签: build-process scons


    【解决方案1】:

    您可能对 Google 的 Software Construction Toolkit 感兴趣,即 made open source in February 2009。它在 SCons 之上添加了新功能,例如改进的 Visual Studio 项目文件生成、单元测试功能以及使用 distcc 或 incredibuild 进行分布式构建。

    【讨论】:

    • 这是一个很大的答案。谢谢!你在用吗?
    • 还没有,因为它仍然很新(在 Google 之外 - 他们似乎已经在 Chrome 中使用它一段时间了)。
    【解决方案2】:

    wiki 中的SCons Recipes 是一个很好的起点。另外看看使用 SCons 的其他项目,例如Ardour build system。如果这还不能解决问题,您可能想看看一些第三方 SCons 扩展

    据我所知,没有商定的 SCons最佳实践。 SCons 社区似乎更喜欢适应性而不是“规范化”。不过,从头开始设计一个体面的基于 SCons 的构建系统并不难。 (一旦你了解了 VariantDir 的工作原理,至少。)

    【讨论】:

    • 你可能是对的。但是必须知道 VariantDir 是您需要的命令。此外,很难找到关键的事实,即路径前面的“#”是我需要的。
    • 为什么 VariantDir 如此重要?这个函数的文档比较稀缺
    • 最终,您可能想要分离多个构建变体,这就是 VariantDir 发挥作用的时候。许多人也使用它来设置他们的构建目录,因此它被广泛使用。在实践中,VariantDir 功能强大但不是很直观。关于文档:手册页是您的朋友。
    • 有趣的是,Ardor 最近已切换到 Waf。 Paul Davis 在 FLOSS 周刊 86 twit.tv/floss86 上更详细地解释了原因
    【解决方案3】:

    如果您使用 Eclipse 进行 C++ 开发,您可能需要查看这个 SCons 构建器插件 (http://nic-nac-project.org/~lothar/eclipse/update/SConsBuilderPlugin.html)

    【讨论】:

      【解决方案4】:

      另一个使用 SCons 的好例子是为 MIT 许可的 Godot 游戏引擎构建系统:

      【讨论】:

        猜你喜欢
        • 2013-03-08
        • 2011-04-19
        • 2010-11-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-08-13
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多