代码之家  ›  专栏  ›  技术社区  ›  noureddine-as

在Docker中部署交叉编译工具链

  •  0
  • noureddine-as  · 技术社区  · 6 年前

    使用rocket chip generator项目开发一个交叉编译工具链(用于riscv架构)。这有很多依赖性,我在ubuntu 16.04lts机器上开发了所有东西。我想把它部署到其他拥有旧的linux debian(linux 3.2)发行版的机器上。

    由于依赖关系有很多问题,我无法在机器上正常运行测试。

    尝试一个虚拟机,是可行的,但性能不够公平。

    我的问题是, 是否有其他方法可以自我包含工具链及其源代码和依赖项?我听说了Docker,那是用来做这个的,但我想知道这对我来说是否有用?

    欢迎任何意见或指导! 谢谢, 谨致问候。

    1 回复  |  直到 6 年前
        1
  •  0
  •   atline    6 年前

    是的,这是Docker的一个场景。

    正如你提到的,它是一个交叉构建工具。所以你可以把你的源代码放在host中,例如/my_source_code_folder_host,然后使用下面的命令来构建源代码。

    docker run --rm -v /my_source_code_folder_host:/my_source_code_folder_container your_build_container_image
    

    为了 your_build_container_image ,你需要设置 CMD ENTRYPOINT 在dockerfile中,值应该是工具链的build命令,默认情况下在 my_source_code_folder_container ,然后输出也将 我的源代码文件夹容器 是的。

    作为 我的源代码文件夹容器 配置为文件夹中的Docker卷 my_source_code_folder_host 在主机中,所以输出也会在主机中看到。

    目前,该解决方案已广泛应用于某半导体公司ci团队的日常交叉编译。

    推荐文章