build - 对于具有外部依赖项的跨平台、多语言库,构建环境应该如何?

标签 build build-process cross-platform build-automation

我正在研究启动一个具有以下所需要求的小型库:

  • 本地构建于 3个平台 : Linux, Windows, OS X
  • 具有 的绑定(bind)3 种动态语言 : Python, Ruby, Lua
  • 依赖 来自外部项目的代码 : 杂波, cairo, pango

  • 有没有办法创建一个以某种方式绕过外部库构建系统的构建环境?

    天真的用例是只下载库源代码,在源代码中有一个脚本下载依赖项的源代码并在需要时修补东西,然后使用 native 环境在一个命令中构建所有内容(OS X 上的 XCode ,Windows 上的 Visual Studio Express 和 Linux 上的 GCC)。

    最终的库应该具有静态链接的所有依赖项。

    我有哪些选择?我应该如何最好地解决这个问题?
    任何教程或有用的链接表示赞赏。

    先感谢您! :)

    最佳答案

    我会看看http://jenkins-ci.org/ (原 hudson )。

    它是为持续集成而设计的,但作为副作用,它有一个非常灵活的构建作业配置引擎,可以调用各种构建工具。

    它还具有从属节点的概念并将特定作业与这些节点相关联,因此您可以将一系列与从属节点相关联的构建作业放在适当的操作系统上,这些操作系统使用每种语言的最佳构建工具。

    关于build - 对于具有外部依赖项的跨平台、多语言库,构建环境应该如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5498348/

    相关文章:

    node.js - 如何在不使用 grunt 或 gulp 的情况下在 Node JS 中检查 LESS 和 SCSS 文件?

    java - 我如何从源代码中获取 "export"这个 Eclipse 插件?

    从 cron 任务构建项目

    version-control - 最佳实践,针对主干构建主干?

    java - Ant 分词器 : Selecting an individual Token

    HTML5 桌面包装器/框架

    linux - 如何在Linux上编译跨平台的Go语言项目?

    build - 如何使用 rake 进行分层构建?

    visual-studio - 如何将 include/lib 目录添加到 MSVC 2015 解决方案中的所有项目?

    c++ - C++ 可以编译成平台独立代码吗?为什么不?