# Windows Cygwin 开发环境(维护说明)

本主题将介绍如何构建和扩展用于支持的 基于 Cygwin 的 Windows 开发环境.

# 其他信息

# 特点/问题

已知以下功能可以正常使用(2.0 版):

  • 使用 jMAVSim 构建和运行 SITL,性能明显优于虚拟机(可生成本地 Windows 二进制文件 px4.exe).
  • 构建和上传 NuttX 版本(例如:px4_fmu-v2 和 px4_fmu-v4)
  • 风格检查 风格 (支持命令): 使格式化)
  • 命令行自动完成
  • 非侵入式安装程序!安装程序不会影响您的系统和全局路径(它只修改所选的安装目录,例如 * * * * * * * * * * * *)。C:\PX4* 并使用临时本地路径)。
  • 安装程序支持更新到新版本,并在工具链文件夹中保留个人更改

遗漏:

# shell 脚本安装

您也可以使用 Github 项目中的 shell 脚本安装环境。

  1. 确保您有 Git for Windows (打开新窗口) 已安装。
  2. 将软件源 https://github.com/PX4/windows-toolchain 克隆到您要安装工具链的位置。默认位置和命名可通过打开 Git Bash 和执行:
cd /c/ git clone https://github.com/PX4/windows-toolchain PX4
  1. 如果要安装所有组件,请导航到新克隆的文件夹,然后双击脚本 install-all-components.bat 文件夹中的 工具链.如果您只需要某些组件,并希望节省网络流量和磁盘空间,您可以导航到不同的组件文件夹,例如:............. toolchain\cygwin64 并点击 install-XXX.bat 脚本只获取特定内容。
  2. 继续 入门.

# 手动安装(针对工具链开发人员)

本节介绍如何在指向基于脚本的安装软件仓库中的相应脚本的同时,自行手动设置 Cygwin 工具链。结果应与使用脚本或 MSI 安装程序相同。

备注

工具链会得到维护,因此这些说明可能无法涵盖未来所有更改的所有细节。

  1. 创建 文件夹:**C:\PX4**, *C:\PX4\toolchain* 和 *C:\PX4\home*

  2. 下载 Cygwin 安装程序 文件 setup-x86_64.exe (打开新窗口)Cygwin 官方网站 (打开新窗口)

  3. 运行下载的安装文件

  4. 在向导中选择安装到文件夹中:*C:\PX4\toolchain\cygwin64*

  5. 选择安装默认的 Cygwin 基本版本和下列附加软件包的最新可用版本:

    • 类别:包装名称
    • Devel:cmake(3.3.2 版无弃旧警告,3.6.2 版可正常工作,但有警告)。
    • 开发工具:gcc-g++
    • 开发:gdb
    • 开发:git
    • 开发:制作
    • 开发:忍者
    • 开发:补丁
    • 编辑:xxd
    • 编辑器:nano(除非您是 vim 专家)
    • Python:python2
    • Python:python2-pip
    • Python:python2-numpy
    • Python:python2-jinja2
    • Python:python2-pyyaml
    • Python:python2-cerberus
    • 存档:解压缩
    • 实用工具:风格
    • shells:bash-completion
    • 网页:wget

    备注

    尽可能不要选择不在此列表中的软件包,因为有些软件包会发生冲突并破坏构建。

  6. 编写或复制 批处理脚本 run-console.bat (打开新窗口)setup-environment.bat (打开新窗口).

    通过准备好的批脚本启动所有开发工具的原因是,它们会预先配置启动程序,使其使用工具链文件夹内的本地、可移植 Cygwin 环境。要做到这一点,首先要调用脚本 setup-environment.bat (打开新窗口) 然后再使用所需的应用程序(如控制台)。

    剧本 setup-environment.bat (打开新窗口) 本地设置工作区根目录的环境变量 PX4_DIR,所有二进制位置 路径和 unix 环境的主目录 主页.

  7. 添加必要的 python 软件包 打开 Cygwin 工具链控制台(双击 run-console.bat),并执行

    pip2 install toml pip2 install pyserial pip2 install pyulog
    
  8. 下载 ARM GCC 编译器 (打开新窗口) 作为 Windows 下二进制文件的 zip 压缩包,并将内容解压缩到文件夹 C:\PX4\toolchain\gcc-arm.

    备注

    这就是工具链的作用: gcc-arm/install-gcc-arm.bat (打开新窗口).

  9. 安装 JDK:

    • 从以下地址下载 Java 14 甲骨文 (打开新窗口)AdoptOpenJDK (打开新窗口).
    • 遗憾的是,没有包含二进制文件的便携式压缩包,你必须直接安装。
    • 找到二进制文件并将其移动/复制到 C:\PX4\toolchain\jdk.
    • 您可以再次从 Windows 系统卸载工具包,我们只需要工具链的二进制文件。

    备注

    这就是工具链的作用: jdk/install-jdk.bat (打开新窗口).

  10. 下载 Apache Ant (打开新窗口) 作为 Windows 下二进制文件的 zip 压缩包,并将内容解压缩到文件夹 C:\PX4\toolchain\apache-ant.

    TIP

    确保在下载的压缩包内的文件夹中没有额外的文件夹层。

    备注

    这就是工具链的作用: apache-ant/install-apache-ant.bat (打开新窗口).

  11. 下载、构建并添加 genromfs 到路径:

    • 将源代码克隆到文件夹 C:\PX4\toolchain\genromfs\genromfs-src

      cd /c/toolchain/genromfs git clone https://github.com/chexum/genromfs.git genromfs-src
      
    • cd genromfs-src make all
      
    
    * 将生成的二进制**genromfs.exe**复制到一个文件夹下:**C:\PX4\toolchain\genromfs** :::note 这就是工具链在:[genromfs/install-genromfs.bat](https://github.com/MaEtUgR/PX4Toolchain/blob/master/toolchain/genromfs/install-genromfs.bat)。 :::
    
  12. 确保所有已安装组件的二进制文件夹都正确地列在 路径setup-environment.bat (打开新窗口).