Start building Flutter native desktop apps on Linux
Software requirements
#To write and compile Flutter code for desktop, you must have the following version of Linux and the listed software packages.
Operating system
#Flutter supports Debian 11 or later and Ubuntu 22.04 or later LTS .
Development tools
#To develop Flutter on Linux:
Install the following packages:
curl
,git
,unzip
,xz-utils
,zip
,libglu1-mesa
sudo apt-get update -y && sudo apt-get upgrade -y; sudo apt-get install -y curl git unzip xz-utils zip libglu1-mesa
To develop Linux desktop apps, use the following command to install these packages:
clang
,cmake
,ninja-build
,pkg-config
,libgtk-3-dev
,libstdc++-12-dev
sudo apt-get install \ clang cmake git \ ninja-build pkg-config \ libgtk-3-dev liblzma-dev \ libstdc++-12-dev
The developers of the preceding software provide support for those products. To troubleshoot installation issues, consult that product's documentation.
Configure a text editor or IDE
#You can build apps with Flutter using any text editor or integrated development environment (IDE) combined with Flutter's command-line tools.
Using an IDE with a Flutter extension or plugin provides code completion, syntax highlighting, widget editing assists, debugging, and other features.
Popular options include:
- Visual Studio Code with the Flutter extension for VS Code.
- Android Studio with the Flutter plugin for IntelliJ.
- IntelliJ IDEA with the Flutter plugin for IntelliJ.
Install the Flutter SDK
#To install the Flutter SDK, you can use the VS Code Flutter extension or download and install the Flutter bundle yourself.
Use VS Code to install Flutter
#To install Flutter using these instructions, verify that you've installed Visual Studio Code and the Flutter extension for VS Code.
Prompt VS Code to install Flutter
#Launch VS Code.
To open the Command Palette, press Control + Shift + P.
In the Command Palette, type
flutter
.Select Flutter: New Project.
VS Code prompts you to locate the Flutter SDK on your computer.
If you have the Flutter SDK installed, click Locate SDK.
If you don't have the Flutter SDK installed, click Download SDK.
This option sends you the Flutter install page if you haven't installed Git as directed in the development tools prerequisites.
When prompted Which Flutter template?, ignore it. Press Esc. You can create a test project after checking your development setup.
Download the Flutter SDK
#When the Select Folder for Flutter SDK dialog displays, choose where you want to install Flutter.
VS Code places you in your user profile to start. Choose a different location.
Consider
~/development/
Click Clone Flutter.
While downloading Flutter, VS Code displays these pop-up notifications:
Downloading the Flutter SDK. This may take a few minutes.
Initializing the Flutter SDK. This may take a few minutes.
The download and installation take a few minutes. If you suspect that the download has hung, click Cancel, then start the installation again.
When the Flutter installation succeeds, VS Code displays this pop-up notification:
Do you want to add the Flutter SDK to PATH so it's accessible in external terminals?
Click Add SDK to PATH.
When successful, a notification displays:
The Flutter SDK was added to your PATH
VS Code might display a Google Analytics notice.
If you agree, click OK.
To enable
flutter
in all a shell windows:- Close, then reopen all a shell windows.
- Restart VS Code.
Download then install Flutter
#To install Flutter, download the Flutter SDK bundle from its archive, move the bundle to where you want it stored, then extract the SDK.
Download the following installation bundle to get the latest stable release of the Flutter SDK.
For other release channels, and older builds, check out the SDK archive.
The Flutter SDK should download to the Linux default download directory:
~/Downloads/
.Create a folder where you can install Flutter.
Consider creating a directory at
~/development/
.Extract the file into the directory you want to store the Flutter SDK.
tar -xf ~/Downloads/flutter_sdk_v1.0.0.zip -C ~/development/
When finished, the Flutter SDK should be in the
~/development/flutter
directory.
Add Flutter to your PATH
#To run Flutter commands in a shell, add Flutter to the PATH
environment variable.
Check which shell starts when you open a new console window. This would be your default shell.
echo $SHELL
This differs from another command that tells you which shell runs in your current console.
echo $0
To add Flutter to your
PATH
, expand the entry for your default shell, then choose the command.Show
bash
commandecho 'export PATH="$HOME/development/flutter/bin:$PATH"' >> ~/.bash_profile
Show
zsh
commandecho 'export PATH="$HOME/development/flutter/bin:$PATH"' >> ~/.zshenv
Show
fish
commandfish_add_path -g -p ~/development/flutter/bin
Show
csh
commandecho 'setenv PATH "$HOME/development/flutter/bin:$PATH"' >> ~/.cshrc
Show
tcsh
commandecho 'setenv PATH "$HOME/development/flutter/bin:$PATH"' >> ~/.tcshrc
Show
ksh
commandecho 'export PATH="$HOME/development/flutter/bin:$PATH"' >> ~/.profile
Show
sh
commandecho 'export PATH="$HOME/development/flutter/bin:$PATH"' >> ~/.profile
To apply this change, restart all open terminal sessions.
Check your development setup
#Run Flutter doctor
#The flutter doctor
command validates that all components of a complete Flutter development environment for Linux.
Open a shell.
To verify your installation of all the components, run the following command.
flutter doctor
As you chose to develop for desktop, you do not need all components. If you followed this guide, the command should output [✓]
for the tooling and platforms you set up.
Troubleshoot Flutter doctor issues
#When the flutter doctor
command returns an error, it could be for Flutter, VS Code, one of the Linux libraries, the connected device, or network resources.
If the flutter doctor
command returns an error for any of these components, run it again with the verbose flag.
flutter doctor -v
Check the output for other software you might need to install or further tasks to perform.
If you change the configuration of your Flutter SDK or its related components, run flutter doctor
again to verify the installation.
Start developing Linux desktop apps with Flutter
#Congratulations. Having installed all prerequisites and the Flutter SDK, you can start developing Flutter apps for Linux desktop.
To continue on your learning journey, consult the following guides:
Manage your Flutter SDK
#To learn more about managing your Flutter SDK installation, consult the following resources.
Unless stated otherwise, the documentation on this site reflects the latest stable version of Flutter. Page last updated on 2025-05-19. View source or report an issue.