Developer Guide
本文档指导你搭建 NE503 AIPC 平台的完整开发环境,并完成从源码到发布包的构建。
Part A:环境搭建
1. 系统要求
| 系统 | 支持程度 | 说明 |
|---|---|---|
| Ubuntu 20.04+ | 完全支持 | 推荐,所有层级原生可用 |
| macOS (Intel / Apple Silicon) | 支持 | Layer 1/2 原生可用;Layer 3 经 Docker 镜像(arm64 原生,无需 QEMU) |
硬件: 最低 4 核 CPU、8 GB 内存、20 GB 磁盘。仅 Go/Web 开发时 4 GB 内存即可。
2. 获取源码
git clone <repo-url> && cd ne503
验证仓库完整性:
ls Makefile platform/ web/
项目根目录结构:
ne503/
├── platform/ # 平台服务(Go + C++)
├── hal/ # HAL v1(C,legacy)
├── hal_v2/ # HAL v2(C++,推荐)
├── sdk/ # 开发者 SDK(Python / Go)
├── web/ # Web 控制台(React + TypeScript)
├── apps/ # 示例应用
├── configs/ # 配置模板
├── tools/ # 开发工具
├── scripts/ # 构建/测试/部署脚本
└── docker/ # Docker 开发环境
3. 安装依赖
NE503 构建系统分为三层:
| 层级 | 内容 | 典型场景 |
|---|---|---|
| Layer 1 | Go + Node.js + protoc + Python | 平台服务、Web 控制台、SDK 开发 |
| Layer 2 | Layer 1 + CMake + g++ + gRPC C++ | camera-daemon 等原生 C/C++ 组件 |
| Layer 3 | Layer 1/2 + Hailo Yocto SDK(交叉编译) | Hailo-15 HAL 固件构建 |
大多数开发者只需 Layer 1/2。
完整发布包构建(pack-release)必须安装 Layer 3;仅开发 Go 服务、Web 控制台或 Python SDK 时可跳过。
如何选择安装方式:
| 你的情况 | 选择 |
|---|---|
| 想最快出包 / 不想折腾本机环境 / macOS 用户 | 方式一 Docker(推荐) |
| Ubuntu 本机开发,能联网跑脚本 | 方式二 脚本安装 |
| 脚本失败 / 离线 / 需精确控制版本 | 方式三 手动安装 |
方式二是方式三的自动化封装——脚本失败时可退回方式三,对照手动步骤排查。