尧图网络科技YAOTU DIGITAL 获取报价
获取报价
首页 / 资讯中心 / 文章详情

F´ 飞行软件框架安装指南:环境准备、工具链部署与故障排查

发布时间:2026/9/25 3:01:40

资讯中心
01
ARTICLE

F´ 飞行软件框架安装指南:环境准备、工具链部署与故障排查

F´ 飞行软件框架安装指南:环境准备、工具链部署与故障排查
嵌入式系统编程【免费下载链接】fprimeF´ - A flight software and embedded systems framework项目地址https://gitcode.com/gh_mirrors/fpri/fprime点击查看免费下载本指南面向想要在 Linux 或 macOS 上快速搭建 F´F Prime飞行软件与嵌入式系统框架开发环境的个人开发者和研究人员系统介绍从系统依赖、Python 虚拟环境、核心仓库克隆到工具链安装、安装验证与常见问题修复的完整流程。读完本文你将能够独立完成一次可用的 F´ 环境部署并通过构建参考应用Ref与启动 GDS 图形界面来确认 Autocoder 和地面站工具链均已正确安装。F´ 的官方安装指南位于 docs/INSTALL.md本文以其为骨架并结合仓库内的依赖清单、构建脚本与 CI 测试用例对每一步给出源码级佐证。对于有特殊需求的大型项目官方指出可能需要在本文流程基础上进一步扩展本文先解决从零到可用这一核心问题。安装前的环境要求在开始安装之前需要先确认宿主机的软硬件环境满足 F´ 的基本依赖。官方列出的硬性要求如下依赖项说明操作系统Linux 或 macOSgit用于克隆 F´ 核心仓库CMake 3.16 或更新命令行工具cmake必须位于系统 PATH 中C/C 编译器Clang 或 GNU 工具链如gcc/gPython 3.7同时需要虚拟环境venv与 PIP 支持如果宿主机无法满足上述任意一项官方建议改用虚拟机例如 VirtualBox继续安装。从仓库的setup.py可以看到F´ 的 Python 工具栈在声明层面对 Python 版本的下限要求正是 3.7python_requires3.7其classifiers中显式列出了对 Python 3.7、3.8、3.9、3.10 的官方支持范围与安装指南的 Python 3.7 完全一致。此外setup.py将自身定义为 fprime meta-package其职责是把 fprime-fpp、fprime-tools、fprime-gds 三个子包以经过测试的兼容版本组合拉入用户环境这是理解整个安装流程的关键——安装 F´ 本质上是在安装一套经过版本配对的 Python 工具集。提示不同操作系统还有各自的补充注意事项详见文末的故障排查章节。第一步创建 Python 虚拟环境F´ 的工具链FPP 编译器、fprime-util构建工具、GDS 地面数据系统都是以 Python 包形式通过 PIP 分发的。由于 Python 常被操作系统本身大量使用为避免污染系统环境、也避免系统自带包版本与项目依赖冲突官方强烈建议在虚拟环境中运行 F´ 的 Python 工具。虚拟环境可以创建在任何用户拥有读写权限的路径下本指南使用$HOME/fprime-venv作为示例python3 -m venv $HOME/fprime-venv . $HOME/fprime-venv/bin/activate pip install -U setuptools setuptools_scm wheel pip三个需要说明的细节激活环境. $HOME/fprime-venv/bin/activate必须在每一个想要使用虚拟环境的新终端中重新执行该命令只是为当前 Shell 进程注入环境变量不会跨终端生效。升级 setuptools_scmsetup.py中通过use_scm_version从 Git 标签自动推导fprime元包的版本号因此需要较新的setuptools_scm才能正常工作。升级 pip 与 wheel保证后续安装预编译 wheel 包与解析依赖时不会因版本过旧而失败。第二步克隆 F´ 核心仓库并安装工具集安装 F´ 首先需要通过 Git 克隆核心仓库这一步会拉取框架本身及全部 C 源码。克隆完成后使用仓库自带的requirements.txt安装全部工具及其经过测试的固定版本。git clone fprime 核心仓库地址 pip install -r fprime/requirements.txt注意当切换 F´ 版本时务必重新执行pip install -r fprime/requirements.txt以确保工具版本与新的框架版本配套CI 脚本 ci/bootstrap.bash 中也采用了类似的安装方式。仓库根目录下的 requirements.txt 是一份完整的固定版本pinned依赖清单其中与 F´ 直接相关的核心工具包括包名版本当前仓库锁定作用fprime-fpp1.2.0FPPF Prime 规划语言编译器fprime-tools3.1.2a1fprime-util构建/生成命令行工具fprime-gds3.1.5a1F´ 地面数据系统GDSargcomplete1.12.3命令行 Tab 自动补全支持库pytest6.2.5集成测试与单元测试运行Cheetah3 / lxml / pyzmq / Flask 等—代码生成模板、XML 解析、通信与 GDS 后端依赖这份清单恰好印证了 setup.py 中install_requires对三个子包的最小版本约束fprime-toolsv3.1.0a2、fprime-gdsv3.1.0a2、fprime-fppv1.0.2b12无论走一条命令装全套还是单独安装子包最终都应落在相互兼容的版本组合上。第三步验证安装是否成功安装完成后可以通过两条命令快速验证先验证 Autocoder代码自动生成器与构建系统再验证 GDS 地面站组件。如果某个组件没有正确安装对应的命令会直接失败。验证 Autocoder构建 Ref 参考应用Ref是仓库中随附的参考部署Reference Deployment包含了自定义组件与完整拓扑是最合适的冒烟测试目标cd Ref fprime-util generate fprime-util build --jobs $(nproc || printf %s\n 1)其中fprime-util generate负责生成 CMake 构建系统fprime-util build --jobs ...执行并行编译$(nproc || printf %s\n 1)会取 CPU 核数作为并行任务数在没有nproc命令的系统上则回退为 1。从源码结构看Ref/CMakeLists.txt 是整个构建的组织核心它先include(../cmake/FPrime.cmake)引入框架核心构建规则再通过add_fprime_subdirectory逐个加入PingReceiver、RecvBuffApp、SendBuffApp、SignalGen四个参考组件与Top拓扑目录最后由register_fprime_deployment()将Ref注册为可部署应用并对部署可执行文件启用-Wall、-Wextra、-Werror等一系列严格编译选项。CI 中的 ci/tests/fputil.bash 也是以完全相同的fprime-util generate/fprime-util build序列对多个部署进行回归验证的可见这是官方认可的标准验证路径。验证 GDS启动 HTML 图形界面Autocoder 构建成功后Ref目录下会生成包含预构建字典dictionary与二进制文件的构建产物build-artifactsGDS 依赖这些产物运行fprime-gds -g html -r path to fprime checkout/Ref/build-artifacts该命令以 HTML 界面模式启动 GDS并通过-r指定构建产物根目录。Ref必须包含对应系统的预构建字典与二进制文件这通常由上一步的 Autocoder 安装测试保证即需要先具备可用的 Autocoder 安装。高级选项以下选项适用于需要进一步定制环境的用户它们通常要求对 F´ 工具与版本机制有一定了解。启用命令行 Tab 自动补全F´ 的多个命令行工具支持 Tab 自动补全详细操作见 docs/UsersGuide/user/autocomplete.md。该文档基于argcomplete库正是 requirements.txt 中锁定的argcomplete1.12.3实现支持 bash、zsh、fish、tcsh 等常见 Shell目前适用于fprime-cli工具可补全子命令名、选项、文件路径乃至所连 F´ 实例的可用命令。其核心激活方式有两类手动激活每个新 Shell 执行一次basheval $(register-python-argcomplete fprime-cli)zsh先autoload -U bashcompinit bashcompinit再执行与 bash 相同的eval ...命令fishregister-python-argcomplete --shell fish fprime-cli | sourcetcsheval register-python-argcomplete --shell tcsh fprime-cli随虚拟环境激活将上述输出追加到虚拟环境的激活脚本中如 bash/zsh 为$VIRTUAL_ENV/bin/activatefish 为activate.fishtcsh 为activate.csh之后每次激活环境即自动启用补全该方式会修改 Python 管理的虚拟环境文件若后续出现异常重装 F´ 并跳过本节即可恢复。单独安装各工具F´ 的每个工具都可以通过对应的子包单独安装但必须注意保持版本兼容工具对应包fppFPP 编译器fprime-fppfprime-util构建工具fprime-toolsGDS地面数据系统fprime-gds注意fprime-gds依赖fprime-tools建议直接安装fprime-gds让 PIP 自动拉取兼容版本的fprime-tools。安装可选组件部分包附带可选组件通过方括号中的 extra 名称安装包说明fprime-tools[dev]安装用于开发 F´ Python 代码的开发工具fprime-gds[uart-adapter]安装 GDS 的 UART 通信适配器fprime-gds[test-api-xls]为集成测试框架安装 Excel 日志记录支持示例pip install fprime-gds[uart-adapter]这些组件会引入大量额外依赖库并非所有系统都支持因此按需安装即可。故障排查本节汇总了 F´ 安装过程中的常见问题与已知解法。fprime-util: command not found如果在虚拟环境中遇到命令找不到最常见的原因是新终端没有重新激活虚拟环境。请先执行. $HOME/fprime-venv/bin/activate如果是在不使用虚拟环境的情况下安装PIP 有时会把用户工具安装到$HOME/.local/bin此时需要将该目录加入 PATH。Helper script fpp-redirect-helper exited with reason: Permission denied该错误通常意味着辅助脚本cmake/autocoder/fpp-wrapper/fpp-redirect-helper丢失了可执行权限。从源码看cmake/autocoder/fpp-wrapper/fpp-redirect-helper 是一个 shell 脚本其作用是将第一个参数作为 stdout 输出文件把剩余参数拼成命令执行并把其标准输出重定向到该文件——它由 FPP 包装器在代码生成阶段调用因此必须可执行。验证与修复步骤cd fprime/cmake/autocoder/fpp-wrapper/ ls -l chmod 700 fpp-redirect-helperUbuntu、Debian 系系统的 Java 与 Python PIP 问题Ubuntu 及多数 Debian 衍生版本默认的 Python 3 安装并不包含 PIP 包。可在这些系统上执行sudo apt install git cmake default-jre python3 python3-pip python3-venv之后即可正常运行后续安装。macOS 上 CMake 命令找不到如果直接从 CMake 官网安装而非使用 Homebrew 或 MacPorts其命令行工具默认不在 PATH 中。最快的修复方式是在终端执行sudo /Applications/CMake.app/Contents/bin/cmake-gui --install该命令会为系统安装 CMake 命令行工具。系统 Python、系统包与 python3 的关系许多操作系统会通过包管理器apt、yum 等提供 Python 的 PIP 包。多数 Python 项目并不推荐使用这类系统包因为其版本往往与项目依赖的指定版本不一致。因此官方建议在虚拟环境中安装 F´这一做法在本文第一步中已采用。macOS 上 Python 3.6 的 SSL 证书错误Python 3.6 自带的 openSSL 需要访问 macOS 的根证书。若安装 F´ 时出现如下错误Failed find expected download: urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate请在 macOS 终端执行以下命令安装所需证书cd /Applications/Python\ 3.X/ ./Install\ Certificates.command执行完成后重新尝试安装 F´ 即可。小结遵循本指南的流程确认系统依赖 → 创建 Python 虚拟环境 → 克隆仓库并安装固定版本工具集 → 通过Ref构建与 GDS 启动验证安装即可完成一套标准可用的 F´ 开发环境。对于更复杂的项目需求可进一步阅读 docs/UsersGuide/user/fprime-util.md 了解构建工具的更多用法单元测试、平台参数、部署选择等或参考 docs/UsersGuide/user/autocomplete.md 提升命令行操作效率。赞分享嵌入式系统编程【免费下载链接】fprimeF´ - A flight software and embedded systems framework项目地址https://gitcode.com/gh_mirrors/fpri/fprime点击查看免费下载相关推荐MMPose 完整安装指南环境准备、源码构建、Docker 部署与故障排查MMPose 完整安装指南环境准备、源码构建、Docker 部署与故障排查 MMPose 是 OpenMMLab 开源的姿态估计工具箱Pose Estima计算机视觉人工智能深度学习FiftyOne 安装完全指南环境准备、虚拟环境、升级降级与故障排查FiftyOne 安装完全指南环境准备、虚拟环境、升级降级与故障排查 本篇指南以 FiftyOne 官方安装文档 docs/source/installat人工智能计算机视觉数据集数据可视化数据标注模型评测F´F Prime快速上手指南NASA 组件化飞行软件框架的安装、架构与开发入门F´F Prime快速上手指南NASA 组件化飞行软件框架的安装、架构与开发入门 F´F Prime是一个源自美国宇航局喷气推进实验室JPL的组件嵌入式系统编程上一篇Open Assistant 数据上手用 Hugging Face datasets 与 treelib 挖掘 OASST1 对话树结构下一篇从Atom到现代代码编辑器技术架构演进与迁移决策矩阵分析创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
02
RELATED NEWS

相关资讯

更多网站建设与数字化升级内容

03
WHY YAOTU

想打造同款高转化官网?

懂行业、懂生意,从建站到增长一站式陪跑

◈

场景化定制

不做模板站,围绕你的业务场景量身设计,小众不撞款。

◐

营销型架构

以转化目标组织内容与路径,让官网真正带来询盘。

▲

全周期服务

设计、开发、运营、运维一体,上线只是开始。

免费获取你的建站方案

留下需求,专属顾问 24 小时内为你输出方案建议。