用 apt 安装 dart 是 ubuntu/debian 系发行版最省事的方式,需先添加官方 apt 源并导入密钥,安装后 dart 和 pub 命令即可用;手动安装需解压 sdk 并配置 path;flutter 用户通常无需单独安装 dart sdk;验证需确保 pub 能联网、时间准确、代理正确。

用 apt 安装 dart 包是最省事的选择
如果你用的是 Ubuntu、Debian 或其衍生版(比如 Parrot OS、Linux Mint),apt 是首选方式,它自动处理依赖、路径和更新。Dart 官方维护了 APT 仓库,安装后 dart 和 pub 命令直接可用,无需手动配置 PATH。
常见错误现象是执行 sudo apt install dart 报错 “Unable to locate package dart”——这说明你还没添加 Dart 的 APT 源。
- 先运行
sudo apt update && sudo apt install apt-transport-https - 再导入签名密钥:
sudo sh -c 'curl https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add -'(注意:部分新系统已弃用apt-key,但 Dart 当前仍兼容) - 添加源:
sudo sh -c 'curl https://storage.googleapis.com/download.dartlang.org/linux/debian/dart_stable.list > /etc/apt/sources.list.d/dart_stable.list' - 最后更新并安装:
sudo apt update && sudo apt install dart
安装完验证:dart --version 应输出类似 Dart SDK version: 3.4.3。此时 /usr/lib/dart/bin 已被自动加入系统 PATH,不用额外操作。
不走 apt 时,手动解压 SDK 要自己管 PATH
某些 CI 环境或定制发行版(如 Alpine、RHEL/CentOS)不支持 apt,就得手动下载 ZIP 包。这种方式灵活,但容易漏掉环境变量配置,导致命令找不到。
下载地址有固定模式:https://storage.googleapis.com/dart-archive/channels/stable/release/<version>/sdk/dartsdk-linux-x64-release.zip</version>,把 <version></version> 替换为当前稳定版号(比如 3.4.3)。
Zynq‑7000 / Zynq UltraScale+ 硬件调试技能。适用于 Xilinx Zynq(Cortex‑A9/A53 + FPGA)Linux 环境,调试 I2C、I2S、UART、GPIO 等外设。包括设备树配置、内核驱动、用户空间调试工具、交叉编译和常见问题排查,支持 PetaLinux 开发。
- 用
wget -c下载,避免中断重传失败 - 解压后得到
dart-sdk/目录,里面bin/下有dart、pub等可执行文件 - 必须显式加到
PATH:在~/.bashrc或~/.zshrc中追加export PATH="$PATH:/path/to/dart-sdk/bin",然后source ~/.bashrc - 别用
$PWD或相对路径写进PATH,切换目录后会失效
Flutter 用户通常不需要单独装 Dart SDK
从 Flutter 1.21 开始,Flutter SDK 自带完整 Dart SDK,且版本与 Flutter 绑定。如果你只开发 Flutter 应用,flutter 命令调用的 Dart 就是它自带的,dart 命令也能直接用——前提是 flutter/bin 在 PATH 里。
容易踩的坑是:装了系统级 dart 后又装 Flutter,结果两个 Dart 版本冲突。比如 dart --version 和 flutter dart --version 输出不同。
- 检查是否真需要独立 Dart:运行
which dart和which flutter,看路径是否重叠 - 如果只用 Flutter,删掉 apt 安装的
dart包更干净:sudo apt remove dart - CI 场景下若只需编译 Dart CLI 工具(非 Flutter),用
apt install dart更轻量,比拉整个 Flutter SDK 快得多
验证安装是否真正可用
光有 dart --version 成功还不够。真实开发中常卡在 pub get 或 HTTPS 请求失败,根源往往是系统缺少 CA 证书或代理配置没生效。
典型错误:Connection failed: Connection refused 或 HandshakeException: Connection closed before receiving peer certificate。
- 运行
dart pub --trace get查看详细网络日志 - 确认系统时间准确(TLS 证书校验依赖时间)
- 如果公司网络用代理,需设置
https_proxy环境变量,且确保pub能读取它(Dart 3.0+ 默认读取系统 proxy 变量) - 最小测试:新建
hello.dart,写void main() => print('ok');,然后dart hello.dart
真正麻烦的从来不是装上,而是让 pub 连得上服务器、让 IDE(如 VS Code)识别出 SDK 路径、让 shell 在任意子目录下都能执行 dart——这些细节不验证,后面写一行代码都可能卡住。










