温馨提示×

debian flutter如何打包应用

小樊
42
2026-10-15 18:38:18
栏目: 智能运维

在 Debian(或其他 Linux 发行版)上使用 Flutter 打包应用,通常分为**调试包、发布包(Release)、以及不同平台(Linux 原生 / Android / 打包为 deb)**几种情况。下面按常见需求说明。


一、前提条件

1. 安装 Flutter(Debian)

sudo apt update
sudo apt install -y curl git unzip xz-utils zip libglu1-mesa

下载 Flutter:

cd ~
git clone https://github.com/flutter/flutter.git -b stable

配置环境变量:

echo 'export PATH="$HOME/flutter/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

检查:

flutter doctor

二、打包 Linux 应用(Debian 桌面程序)

1. 启用 Linux 桌面支持

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

2. 安装 Linux 编译依赖

sudo apt install -y \
  build-essential \
  libgtk-3-dev \
  libblkid-dev \
  liblzma-dev \
  libsecret-1-dev

3. 构建 Release 版本

flutter build linux --release

输出目录:

build/linux/x64/release/bundle/

该目录可直接运行:

./build/linux/x64/release/bundle/your_app

三、打包为 .deb 安装包(推荐方式)

方法一:使用 dpkg-deb(手动)

  1. 准备目录结构:
mkdir -p myapp_deb/opt/myapp
mkdir -p myapp_deb/usr/share/applications
  1. 复制 Flutter 构建结果:
cp -r build/linux/x64/release/bundle/* myapp_deb/opt/myapp/
  1. 创建桌面文件:
nano myapp_deb/usr/share/applications/myapp.desktop

内容:

[Desktop Entry]
Name=MyApp
Exec=/opt/myapp/myapp
Icon=/opt/myapp/icon.png
Type=Application
Categories=Utility;
  1. 创建控制文件:
mkdir -p myapp_deb/DEBIAN
nano myapp_deb/DEBIAN/control

内容:

Package: myapp
Version: 1.0.0
Section: utils
Priority: optional
Architecture: amd64
Depends: libgtk-3-0
Maintainer: you@example.com
Description: My Flutter App
  1. 打包:
dpkg-deb --build myapp_deb

生成:

myapp_deb.deb

安装:

sudo dpkg -i myapp_deb.deb

方法二:使用 flutter_to_debian(自动)

flutter pub add dev:flutter_to_debian
flutter pub run flutter_to_debian

会自动生成 .deb 文件。


四、打包 Android APK(如果你也需要)

flutter build apk --release

输出:

build/app/outputs/flutter-apk/app-release.apk

如需 AAB:

flutter build appbundle --release

五、常见问题

1. flutter doctor 报 Android 许可问题

flutter doctor --android-licenses

2. Linux 打包后无法运行

通常是缺少依赖:

ldd build/linux/x64/release/bundle/your_app

3. 图标不显示

确保:

  • linux/flutter/generated_icons/ 存在
  • .desktop 中路径正确

六、总结

目标 命令
Linux 运行包 flutter build linux --release
deb 安装包 dpkg-deb / flutter_to_debian
Android APK flutter build apk --release

如果你愿意,我可以:

  • 给你一个 完整 deb 打包脚本
  • 或针对 GTK / Wayland / 商业分发 做定制说明

0 踩