在 Debian(Linux) 下使用 Flutter 打包应用,通常分为 Linux 桌面应用打包 和 Android APK 打包 两种常见场景。下面按场景详细说明。
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="$PATH:$HOME/flutter/bin"' >> ~/.bashrc
source ~/.bashrc
验证:
flutter doctor
flutter config --enable-linux-desktop
flutter create .
如果已有项目,不用再 create,只需确认支持:
flutter devices
能看到 linux 即可。
sudo apt install -y \
build-essential \
libgtk-3-dev \
libblkid-dev \
liblzma-dev \
libsecret-1-dev \
libjsoncpp-dev
flutter build linux
构建完成后:
build/linux/x64/release/bundle/
包含:
data/ 资源目录lib/ 依赖库cd build/linux/x64/release
tar -czvf myapp-linux.tar.gz bundle/
.deb(推荐)sudo apt install -y dpkg-dev
myapp_1.0.0/
├── DEBIAN
│ └── control
├── usr
│ ├── local
│ │ └── bin
│ │ └── myapp
│ └── share
│ └── applications
│ └── myapp.desktop
DEBIAN/controlPackage: myapp
Version: 1.0.0
Section: utils
Priority: optional
Architecture: amd64
Depends: libgtk-3-0
Maintainer: you@example.com
Description: My Flutter Linux App
dpkg-deb --build myapp_1.0.0
sudo apt install -y \
openjdk-17-jdk \
adb
flutter config --android-sdk ~/Android/Sdk
flutter build apk --release
输出:
build/app/outputs/flutter-apk/app-release.apk
flutter build web
部署到 Nginx / Apache 即可。
flutter doctor 报错sudo apt install -y clang cmake ninja-build pkg-config
ldd build/linux/x64/release/bundle/your_app
查看缺失的 .so
| 目标平台 | 命令 |
|---|---|
| Linux | flutter build linux |
| APK | flutter build apk |
| Web | flutter build web |
| deb 包 | 手动 dpkg-deb |
如果你需要:
我可以继续帮你细化。