温馨提示×

怎样用Debian打包Flutter应用

小樊
45
2026-09-22 07:26:27
栏目: 智能运维

下面给你一个在 Debian / Ubuntu 等系统上,把 Flutter 应用打包成 Linux 可执行文件并制作成 .deb 安装包的实用流程。


一、准备环境

1. 安装 Flutter(Linux 环境)

sudo apt update
sudo apt install -y git curl unzip xz-utils
git clone https://github.com/flutter/flutter.git -b stable ~/flutter
export PATH="$HOME/flutter/bin:$PATH"
flutter doctor

2. 安装 Linux 桌面依赖

sudo apt install -y \
  clang cmake ninja-build pkg-config \
  libgtk-3-dev liblzma-dev

3. 启用 Linux 桌面支持

flutter config --enable-linux-desktop
flutter create .
flutter build linux

二、构建 Flutter Linux 应用

flutter build linux --release

产物位置:

build/linux/x64/release/bundle/

目录结构示例:

bundle/
├── your_app
├── libflutter_linux_gtk.so
├── data/
└── ...

三、手动打包成 .deb(推荐方式)

1. 创建 deb 目录结构

mkdir -p myapp_deb/opt/myapp
mkdir -p myapp_deb/usr/share/applications
mkdir -p myapp_deb/DEBIAN

2. 拷贝 Flutter 产物

cp -r build/linux/x64/release/bundle/* myapp_deb/opt/myapp/

3. 创建 desktop 文件

myapp_deb/usr/share/applications/myapp.desktop

[Desktop Entry]
Name=MyApp
Comment=Flutter Linux App
Exec=/opt/myapp/your_app
Icon=/opt/myapp/icon.png
Type=Application
Categories=Utility;

4. 创建控制文件

myapp_deb/DEBIAN/control

Package: myapp
Version: 1.0.0
Section: utils
Priority: optional
Architecture: amd64
Depends: libgtk-3-0, libglib2.0-0
Maintainer: you <you@example.com>
Description: A Flutter Linux application

四、生成 .deb 包

dpkg-deb --build myapp_deb myapp_1.0.0_amd64.deb

安装测试:

sudo dpkg -i myapp_1.0.0_amd64.deb

五、使用工具简化(可选)

1. linux_pack / flutter_distributor

flutter pub global activate flutter_distributor
flutter_distributor release --targets deb

2. AppImage(不用 deb)

flutter build linux
appimagetool build/linux/x64/release/bundle

六、常见坑

  • ❌ 缺少 .so → 必须一起打包 bundle
  • ❌ 图标不显示 → desktop 路径必须正确
  • ❌ dpkg 架构错误 → Architecture: amd64

如果你愿意,我可以:

  • 给你一个 完整 deb 模板仓库
  • 帮你 自动化 CI 打包
  • 针对 Flutter + Wayland / X11 优化

直接告诉我你的 Flutter 版本和目标系统即可。

0 踩