Linux install
System requirements
To install and run Flutter, your development environment must meet these minimum requirements:
- Operating Systems: Linux (64-bit)
- Disk Space: 600 MB (does not include disk space for IDE/tools).
-
Tools: Flutter depends on these command-line tools being available in your environment.
-
bash
-
curl
-
git
2.x -
mkdir
-
rm
-
unzip
-
which
-
xz-utils
-
-
Shared libraries: Flutter
test
command depends on this library being available in your environment.-
libGLU.so.1
- provided by mesa packages such aslibglu1-mesa
on Ubuntu/Debian
-
Get the Flutter SDK
-
Download the following installation bundle to get the latest stable release of the Flutter SDK:
flutter_linux_v1.9.1+hotfix.6-stable.tar.xz
For other release channels, and older builds, see the SDK archive page.
-
Extract the file in the desired location, for example:
$ cd ~/development $ tar xf ~/Downloads/flutter_linux_v1.9.1+hotfix.6-stable.tar.xz
-
Add the
flutter
tool to your path:$ export PATH="$PATH:`pwd`/flutter/bin"
This command sets your
PATH
variable for the current terminal window only. To permanently add Flutter to your path, see Update your path. -
Optionally, pre-download development binaries:
The
flutter
tool downloads platform-specific development binaries as needed. For scenarios where pre-downloading these artifacts is preferable (for example, in hermetic build environments, or with intermittent network availability), iOS and Android binaries can be downloaded ahead of time by running:$ flutter precache
For additional download options, see
flutter help precache
.
You are now ready to run Flutter commands!
Note: To update an existing version of Flutter, see Upgrading Flutter.
Run flutter doctor
Run the following command to see if there are any dependencies you need to install to complete the setup (for verbose output, add the -v
flag):
$ flutter doctor
This command checks your environment and displays a report to the terminal window. The Dart SDK is bundled with Flutter; it is not necessary to install Dart separately. Check the output carefully for other software you might need to install or further tasks to perform (shown in bold text).
For example:
[-] Android toolchain - develop for Android devices
• Android SDK at /Users/obiwan/Library/Android/sdk
✗ Android SDK is missing command line tools; download from https://goo.gl/XxQghQ
• Try re-installing or updating your Android SDK,
visit https://flutter.dev/setup/#android-setup for detailed instructions.
The following sections describe how to perform these tasks and finish the setup process.
Once you have installed any missing dependencies, run the flutter doctor
command again to verify that you’ve set everything up correctly.
Warning: The
flutter
tool uses Google Analytics to anonymously report feature usage statistics and basic crash reports. This data is used to help improve Flutter tools over time.Flutter tool analytics are not sent on the very first run. To disable reporting, type
flutter config --no-analytics
. To display the current setting, typeflutter config
. If you opt out of analytics, an opt-out event will be sent, and then no further information will be sent by the Flutter tool.By downloading the Flutter SDK, you agree to the Google Terms of Service. Note: The Google Privacy Policy describes how data is handled in this service.
Moreover, Flutter includes the Dart SDK, which may send usage metrics and crash reports to Google.
Update your path
You can update your PATH variable for the current session at the command line, as shown in Get the Flutter SDK. You’ll probably want to update this variable permanently, so you can run flutter
commands in any terminal session.
The steps for modifying this variable permanently for all terminal sessions are machine-specific. Typically you add a line to a file that is executed whenever you open a new window. For example:
- Determine the directory where you placed the Flutter SDK. You need this in Step 3.
-
Open (or create) the
rc
file for your shell. For example, Linux uses the Bash shell by default, so edit$HOME/.bashrc
. If you are using a different shell, the file path and filename will be different on your machine. -
Add the following line and change
[PATH_TO_FLUTTER_GIT_DIRECTORY]
to be the path where you cloned Flutter’s git repo:$ export PATH="$PATH:[PATH_TO_FLUTTER_GIT_DIRECTORY]/flutter/bin"
-
Run
source $HOME/.<rc file>
to refresh the current window, or open a new terminal window to automatically source the file. -
Verify that the
flutter/bin
directory is now in your PATH by running:$ echo $PATH
Verify that the
flutter
command is available by running:$ which flutter
Update path directly
In some cases, your distribution may not permanently acquire the path when using the above directions. When this occurs, you can change the environment variables file directly. These instructions require administrator privileges:
-
Determine the directory where you placed the Flutter SDK.
-
Locate the
etc
directory at the root of the system, and open theprofile
file with root privileges.$ sudo nano /etc/profile
-
Update the PATH string with the location of your Flutter SDK directory.
if [ "`id -u`" -eq 0 ]; then PATH="..." else PATH="/usr/local/bin:...:[PATH_TO_FLUTTER_GIT_DIRECTORY]/flutter/bin" fi export PATH
- End the current session or reboot your system.
-
Once you start a new session, verify that the
flutter
command is available by running:$ which flutter
For more details on setting the path in Bash, see this StackExchange question. For information on setting the path in Z shell, see this StackOverflow question.
Android setup
Note: Flutter relies on a full installation of Android Studio to supply its Android platform dependencies. However, you can write your Flutter apps in a number of editors; a later step will discuss that.
Install Android Studio
- Download and install Android Studio.
- Start Android Studio, and go through the ‘Android Studio Setup Wizard’. This installs the latest Android SDK, Android SDK Platform-Tools, and Android SDK Build-Tools, which are required by Flutter when developing for Android.
Set up your Android device
To prepare to run and test your Flutter app on an Android device, you’ll need an Android device running Android 4.1 (API level 16) or higher.
- Enable Developer options and USB debugging on your device. Detailed instructions are available in the Android documentation.
- Windows-only: Install the Google USB Driver.
- Using a USB cable, plug your phone into your computer. If prompted on your device, authorize your computer to access your device.
-
In the terminal, run the
flutter devices
command to verify that Flutter recognizes your connected Android device. By default, Flutter uses the version of the Android SDK where youradb
tool is based. If you want Flutter to use a different installation of the Android SDK, you must set theANDROID_HOME
environment variable to that installation directory.
Set up the Android emulator
To prepare to run and test your Flutter app on the Android emulator, follow these steps:
- Enable VM acceleration on your machine.
- Launch Android Studio > Tools > Android > AVD Manager and select Create Virtual Device. (The Android submenu is only present when inside an Android project.)
- Choose a device definition and select Next.
- Select one or more system images for the Android versions you want to emulate, and select Next. An x86 or x86_64 image is recommended.
- Under Emulated Performance, select Hardware - GLES 2.0 to enable hardware acceleration.
-
Verify the AVD configuration is correct, and select Finish.
For details on the above steps, see Managing AVDs.
- In Android Virtual Device Manager, click Run in the toolbar. The emulator starts up and displays the default canvas for your selected OS version and device.
Web setup
Warning: Flutter on the web is currently available as a technical preview. When trying Flutter apps on the web, you can expect to experience crashes and missing features. If this happens, please file an issue.
To prepare to run and test your Flutter app on the web, you must install Chrome, if you haven’t already.