在 Debian(Linux) 上打包 Flutter 应用,常见目标是 Linux 桌面应用(.deb)。下面给你一条从零到 .deb 的实用流程。
sudo apt update
sudo apt install -y \
clang cmake ninja-build \
libgtk-3-dev liblzma-dev \
build-essential pkg-config \
dpkg-dev
确保 Flutter 已启用 Linux 桌面支持:
flutter config --enable-linux-desktop
flutter doctor
flutter create .
flutter pub get
flutter build linux --release
构建完成后:
build/linux/x64/release/bundle/
里面有:
data/lib/ 等mkdir -p myappdeb/opt/myapp
mkdir -p myappdeb/usr/share/applications
mkdir -p myappdeb/DEBIAN
cp -r build/linux/x64/release/bundle/* myappdeb/opt/myapp/
nano myappdeb/usr/share/applications/myapp.desktop
内容示例:
[Desktop Entry]
Name=MyApp
Comment=Flutter Linux App
Exec=/opt/myapp/myapp
Icon=/opt/myapp/assets/icon.png
Terminal=false
Type=Application
Categories=Utility;
⚠️
Exec必须是可执行文件路径
nano myappdeb/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: Flutter Linux App
A simple Flutter desktop app.
chmod 755 myappdeb/DEBIAN
chmod +x myappdeb/opt/myapp/myapp
dpkg-deb --build myappdeb myapp_1.0.0_amd64.deb
安装测试:
sudo dpkg -i myapp_1.0.0_amd64.deb
dart pub global activate flutter_distributor
flutter_distributor release --targets deb
支持:
git clone https://github.com/linux-pack/linux_pack
libflutter_linux_gtk.so not found✅ 必须把 lib/ 一起复制
✅ 不要只复制可执行文件
Icon 路径必须真实存在./build/linux/x64/release/bundle/myapp
| 方式 | 难度 | 推荐 |
|---|---|---|
| 手动 deb | 中 | ✅ 学习用 |
| flutter_distributor | 低 | ✅ 生产用 |
| AppImage | 低 | ✅ 分发用 |
如果你愿意,我可以:
你现在是 桌面应用还是服务器环境?