Files
flyLink/INSTALL.md
flowerstonezl 056289625c init
2026-01-19 17:08:49 +08:00

4.7 KiB

SkyLink 安装和编译指南

系统需求

通用需求

  • Git
  • CMake 3.16+
  • C++ 编译器 (GCC 9+ / Clang 10+ / MSVC 2019+)

机载端 (ROS 2)

  • Ubuntu 22.04 LTS (推荐)
  • ROS 2 Humble
  • OpenCV 4.5+
  • libjpeg-turbo

PC 端 (Qt 6)

  • Qt 6.2+
  • OpenCV 4.5+
  • CMake 3.24+

移动端 (Android)

  • Android 12+ (API 31+)
  • Android Studio Flamingo+
  • Kotlin 1.9.20+

🔧 机载端编译 (ROS 2)

1. 安装 ROS 2 Humble

# 添加 ROS 2 源
sudo apt update
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -
sudo sh -c 'echo "deb [arch=$(dpkg --print-architecture)] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $VERSION_CODENAME) main" > /etc/apt/sources.list.d/ros2.list'

# 安装 ROS 2 Humble
sudo apt update
sudo apt install ros-humble-ros-core

2. 安装依赖

# 系统依赖
sudo apt install -y \
  build-essential \
  python3-dev \
  python3-colcon-common \
  libopencv-dev \
  libjpeg-turbo-dev \
  libmavros-dev

# ROS 2 依赖
sudo apt install -y \
  ros-humble-rclcpp \
  ros-humble-sensor-msgs \
  ros-humble-cv-bridge \
  ros-humble-image-transport \
  ros-humble-mavros
# 导入 ROS 2 环境
source /opt/ros/humble/setup.bash

# 进入项目目录
cd ~/skylink_ros2

# 运行编译脚本
./build.sh release

# 或手动编译
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release

4. 启动机载端

# 导入编译产物
source ~/skylink_ros2/install/setup.bash

# 编辑配置文件(可选)
nano src/skylink_bridge/config/params.yaml

# 启动节点
ros2 launch skylink_bridge bridge.launch.py

🖥️ PC 端编译 (Qt 6)

1. 安装 Qt 6

# Ubuntu
sudo apt install -y \
  qt6-base-dev \
  qt6-tools-dev \
  qt6-network-dev \
  qt6-concurrent-dev \
  libopencv-dev

# Windows (使用 Qt Online Installer)
# https://www.qt.io/download-open-source
cd ~/skylink_qt_station

# 创建编译目录
mkdir build && cd build

# 配置
cmake .. -DCMAKE_BUILD_TYPE=Release

# 编译
make -j$(nproc)

# 运行
./skylink_station

3. 基于 Qt Creator 开发

# 用 Qt Creator 打开项目
qtcreator CMakeLists.txt

# 或 .pro 文件(如果存在)
qtcreator skylink_station.pro

📱 移动端编译 (Android)

1. 安装 Android Studio

Android 官网 下载并安装。

2. 打开项目

# 在 Android Studio 中:
File -> Open -> 选择 skylink_android_app

3. 配置 SDK

  • 打开 Tools -> SDK Manager
  • 安装 Android SDK 34
  • 安装 NDK 26+(如需原生代码)

4. 编译 APK

# 使用 Gradle (Android Studio 内)
Build -> Build Bundle(s) / APK(s)

# 或命令行
cd skylink_android_app
./gradlew build

5. 安装到设备

# 使用 ADB
adb install -r app/build/outputs/apk/release/app-release.apk

# 或在 Android Studio 中
Run -> Run 'app'

🐳 Docker 编译 (ROS 2 机载端)

1. 安装 Docker

# Ubuntu
sudo apt install docker.io docker-compose

# 启动 Docker 服务
sudo systemctl start docker
sudo usermod -aG docker $USER

2. 构建镜像

cd ~/skylink
docker-compose build ros2-bridge

3. 运行容器

docker-compose up -d ros2-bridge

# 查看日志
docker-compose logs -f ros2-bridge

验证安装

机载端

# 检查节点是否运行
ros2 node list

# 查看发布的 Topic
ros2 topic list

# 检查参数
ros2 param list

PC 端

# 启动地面站应用
./skylink_station

# 或调试模式
gdb ./skylink_station

移动端

# 检查 APK 签名
jarsigner -verify -verbose -certs app/build/outputs/apk/release/app-release.apk

# 运行应用
adb shell am start -n com.skylink.app/.MainActivity

🔍 故障排查

编译错误

CMake 找不到 Qt 6

# 设置 Qt 6 路径
cmake .. -DQt6_DIR=/path/to/Qt6/lib/cmake/Qt6

缺少 OpenCV

# 重新安装 OpenCV
sudo apt install libopencv-dev
# 或从源代码编译

运行时错误

UDP 端口被占用

# 查找占用端口的进程
sudo lsof -i :9999

# 修改配置文件中的端口
# skylink_ros2/src/skylink_bridge/config/params.yaml

相机设备找不到

# 列出可用的摄像头
v4l2-ctl --list-devices

# 检查权限
sudo chmod 666 /dev/video0

📚 参考资源


需要帮助? 请提交 Issue 或查看 CONTRIBUTING.md