【问题标题】:How to maintain development environment after updates in linuxlinux更新后如何维护开发环境
【发布时间】:2018-06-25 06:22:07
【问题描述】:

我喜欢偶尔做一些 DIY 电子项目,但我还是新手。 我通常使用 STM32 微控制器而不是 Arduino,但微控制器的一个问题是构建和部署我的代码所需的各种工具链。

这是我的开发环境

  • 操作系统:Ubuntu 18.04
  • IDE:带有 PlatformIO 的 Aton
  • 工具链:OpenOCD
  • 框架:stm32-cube

我的问题是每隔一段时间,我做一次更新,这个组件更新一次,整个环境就坏了。在过去的 4 个月中,这种情况发生了 3 次,我更新了一些东西,但下周它就停止了工作。现在经过各种故障排除和卸载/安装/更新后,我一切都恢复正常了。

有没有人有任何关于如何维护开发环境的提示,这样我就不必花时间修复环境而不是在项目上工作?

【问题讨论】:

    标签: ubuntu stm32 openocd platformio


    【解决方案1】:

    如果它没有坏,不要修理它。

    您使用所需的 IDE 和工具构建虚拟机,仅此而已。禁用所有可能的自动更新方法。验证它,即验证它是否可以可靠地为您将要使用的硬件构建和调试程序,即使没有网络访问(您无法确定今天的任何网络服务将在 20 年后出现,当您将需要为您的旧 DIY 日历修复 Y2038)。将其与使用的安装程序一起存档。

    虚拟机没有网络接口,您可以控制对它的物理访问,因此安全更新并不重要。如果它受到威胁,只需恢复备份即可。

    不要更新。

    当开发环境不再满足您的需求时,例如您需要使用新的编译器功能、框架等,创建新的虚拟机。您可以从头开始重新构建它,或者更新旧的,但如果您通过更新来实现,请始终先制作旧虚拟机的副本,并保留它,直到没有更多使用它的项目投入使用。

    【讨论】:

      【解决方案2】:

      我正在回答我自己的问题,因为我找到了我正在寻找的东西。

      Docker 是为嵌入式开发创建和快照开发环境的完美方式。 这是一个很棒的公会 https://dev.to/dalimay28/using-docker-for-embedded-systems-development-b16

      或者,如果您熟悉 docker,请尝试以下命令。许多了不起的人都在做一些可以用作基础的东西。

      docker search stm32
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-09-29
        • 2021-07-21
        • 2015-01-31
        • 1970-01-01
        • 2011-01-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多