For detail information follow these
* [https://docs.microsoft.com/en-us/dual-screen/flutter/](https://docs.microsoft.com/en-us/dual-screen/flutter/)
* [https://github.com/flutter/flutter/wiki/Setting-up-the-Engine-development-environment](https://github.com/flutter/flutter/wiki/Setting-up-the-Engine-development-environment)
* [https://github.com/flutter/flutter/wiki/Compiling-the-engine](https://github.com/flutter/flutter/wiki/Compiling-the-engine)
Now follow these steps:
1. [Install Depot Tool](https://commondatastorage.googleapis.com/chrome-infra-docs/flat/depot_tools/docs/html/depot_tools_tutorial.html#_setting_up)
`git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git`
2. Add depot_tools to the front of your PATH (you will probably want to put this in your ~/.bashrc or ~/.zshrc). Assuming you cloned depot_tools to /path/to/depot_tools:
`export PATH=/path/to/depot_tools:$PATH`
3. create a folder named **`engine`** and **`cd`** to it
4. create a file named as **`.gclient`**
And file content should be
```
solutions = [
{
"managed": False,
"name": "src/flutter",
"url": "git@github.com:andreidiaconu/engine.git",
"custom_deps": {},
"deps_file": "DEPS",
"safesync_url": "",
},
]
```
5. **`gclient sync`** in that directory
6. **cd** `src/flutter`
7. `git remote add upstream git@github.com:flutter/engine.git`
8. If on linux then run
9.
```
sudo ./build/install-build-deps-android.sh
sudo ./build/install-build-deps.sh
sudo ./flutter/build/install-build-deps-linux-desktop.sh
```
8. Run on **src/** `./flutter/tools/gn --android --android-cpu x64 --unoptimized && ./flutter/tools/gn --unoptimized && ./flutter/tools/gn --android --unoptimized ` add `--xcode-symlinks` if from **mac**
9. Then `ninja -C out/android_debug_unopt_x64 && ninja -C out/host_debug_unopt && ninja -C out/android_debug_unopt`
10. It should produce build on the following location
```
/path/to/flutter/engine/out/host_debug/gen/dart-pkg/sky_engine
/path/to/flutter/engine/out/host_debug/gen/dart-pkg/sky_services
```