# MacOS 开发环境

以下说明为 macOS 设置了 PX4 开发环境。该环境可用于为以下设备构建 PX4:

TIP

PX4 开发团队支持这种设置。要构建其他目标,您需要使用 不同的操作系统 (或一个 不支持的开发环境).

# 视频指南

# 基础设置

macOS 基本设置安装了构建固件所需的工具,还包括安装/使用模拟器所需的常用工具。

# 环境设置

苹果 M1 Macbook 用户!

如果您使用的是苹果 M1 Macbook,请确保通过设置 x86 终端以 x86 运行终端:

  1. 在 "实用工具 "文件夹中找到 "终端 "应用程序 (查找工具> 转到菜单> 实用工具)
  2. 选择 终端.应用程序 并右键单击它,然后选择 重复.
  3. 将复制的终端应用程序重命名,例如重命名为 x86 终端
  4. 现在选择重命名后的 x86 终端 应用程序,然后右键单击并选择 *获取信息
  5. 勾选 使用 Rosetta 打开然后关闭窗口
  6. 运行 x86 终端 这将完全支持当前的 PX4 工具链

首先设置环境

  1. 将下面一行添加到 ~/.zshenv 文件(必要时创建该文件):

    回响 限制 -S -n 2048 >>; ~/.zshenv
    

    备注

    如果不这样做,构建工具链可能会报错: "LD:打开的文件太多";

  2. 执行 Python 3,将以下几行添加到 ~/.zshenv

    # 将 pip3 指向 MacOS 系统 python 3 pip
    别称 管道3=/usr/bin/pip3
    

# 常用工具

设置能够为 Pixhawk/NuttX 硬件构建的环境(并安装使用模拟器的常用工具):

  1. 按照以下步骤安装 Homebrew 安装说明 (打开新窗口).

  2. 在 shell 中运行这些命令来安装常用工具:

    酿造龙头 PX4/px4 brew 安装 px4-dev
    
  3. 安装所需的 Python 软件包:

    # 使用 pip3 安装所需软件包
    python3 -m pip 安装 --user pyserial empty toml numpy pandas jinja2 pyyaml pyros-genmsg packaging kconfiglib future jsonschema
    # 如果此命令失败并显示权限错误,则说明 Python 安装在系统路径中 - 请使用此命令:
    苏都 -H python3 -m pip 安装 --user pyserial empty toml numpy pandas jinja2 pyyaml pyros-genmsg packaging kconfiglib future jsonschema
    

# 经典模拟仿真场景Gazebo

要为 经典仿真场景Gazebo 模拟:

  1. 在 shell 中运行以下命令

    brew unlink tbb
    欙腓 -i.bak '/禁用!日期:/s/^/ /; /禁用!日期:/s/./#/3'。 $(brew --prefix)/Library/Taps/homebrew/homebrew-core/Formula/[email protected] 酿造 安装 tbb@2020 brew 链接 tbb@2020
    

    备注

    2021 年 9 月:上述命令是解决此错误的方法: PX4-Autopilot#17644 (打开新窗口).修复后即可将其删除(连同本说明)。

  2. 使用 Gazebo Classic 安装 SITL 仿真:

    安装 --桶装特穆林啤酒 安装 --桶装石英啤酒 安装 px4-sim-gazebo
    
  3. 运行 macOS 设置脚本: PX4-Autopilot/Tools/setup/macos.sh 最简单的方法是克隆 PX4 源代码,然后从该目录运行脚本,如图所示:

    Git 克隆 https://github.com/PX4/PX4-Autopilot.git --recursive
    CD PX4-自动驾驶仪/工具/设置
     macos.sh
    

# jMAVSim 模拟

要为 jMAVSim 模拟:

  1. 安装最新版本的 Java(如 Java 15)。您可以下载 Oracle Java 15(或更高版本 (打开新窗口) 或使用 Eclipse Temurin (打开新窗口):

    安装 --卡斯克-特穆林
    
  2. 安装 jMAVSim:

    安装 px4-sim-jmavsim
    

    警告

    PX4 v1.11 及以后版本的 jMAVSim 仿真至少需要 JDK 15。

    对于早期版本,macOS 用户可能会看到以下错误 线程 "main" java.lang.UnsupportedClassVersionError 中出现异常:.您可以在 jMAVSim 与 SITL > 故障排除).

# 下一步工作

完成命令行工具链的设置后: