> For the complete documentation index, see [llms.txt](https://ecm-pmdm-flutter.gitbook.io/1.-introduccion-a-flutter/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ecm-pmdm-flutter.gitbook.io/1.-introduccion-a-flutter/2.-instalacion-del-flutter-sdk/instalacion-manual.md).

# Instalación manual

Realizar los siguientes pasos:

{% stepper %}
{% step %}

#### Descargar Flutter SDK

**Paso A. Descargar el Flutter SDK bundle** adecuado para nuestro sistema operativo de desarrollo: <https://docs.flutter.dev/get-started/install>

> El SDK de Flutter incluye también Dart SDK, por tanto, no hay que descargarlo por separado.

<img src="/files/FSPQHTmOUTkzebz6LZSB" alt="" width="375">

> Además, para el **desarrollo de aplicaciones** **móviles**, necesitaremos
>
> * **Android** **SDK** si vamos a desarrollar aplicaciones **Android**. Lo más cómodo es instalarlo junto con Android Studio: <https://developer.android.com/studio>
> * **XCode** para desarrollar aplicaciones **iOS**: <https://flutter.dev/docs/get-started/install/macos#install-xcode>&#x20;

**Paso B. Descomprimir** el bundle del  **Flutter SDK** en el lugar deseado.&#x20;

{% hint style="danger" %} <mark style="background-color:red;">**Atención en Windows:**</mark>  <mark style="color:red;">Tener en cuenta que sea una carpeta</mark> <mark style="color:red;"></mark><mark style="color:red;">**accesible**</mark> <mark style="color:red;"></mark><mark style="color:red;">por el usuario, con</mark> <mark style="color:red;"></mark><mark style="color:red;">**privilegios**</mark> <mark style="color:red;"></mark><mark style="color:red;">suficientes,</mark> <mark style="color:red;"></mark><mark style="color:red;">**y que no incluya espacios en la ruta ni en el nombre**</mark><mark style="color:red;">.</mark>
{% endhint %}
{% endstep %}

{% step %}

#### **Añadir&#x20;*****flutter*****&#x20;al&#x20;*****path*****&#x20;del sistema**

Para tener disponible la **herramienta** de línea de comandos **`flutter`** desde cualquier directorio del sistema, la añadiremos al **PATH** según instrucciones de instalación para nuestro sistema operativo:  <https://docs.flutter.dev/get-started/install/linux#update-your-path>

* Por ejemplo, en Linux, para el usuario actual, lo añadiremos al final de alguno de los siguientes ficheros:  \~/`.bashrc` (que ya existe) o  `~/.bash_profile`, o  `~/.bash_login`, `~/.profile`   (si no existe el fichero, lo creamos).    Otra alternativa, es añadirlo a `/etc/profile` (para que se aplique en todos los usuarios)
  {% endstep %}

{% step %}

#### **Comprobar** la **instalación**

Una vez instalado Flutter, desde un **Terminal**, **ejecutaremos** el comando:&#x20;

**`flutter doctor -v`**  que nos informará cualquier problema que se detecte en la instalación de Flutter.

{% hint style="danger" %} <mark style="background-color:red;">**Atención si vamos a desarrollar para Android:**</mark>   <mark style="color:red;">Flutter necesita las herramientas de línea de comandos:</mark> <mark style="color:red;"></mark><mark style="color:red;">**`Android SDK Command-Line Tools`**</mark> <mark style="color:red;"></mark><mark style="color:red;">(las podemos instalar manualmente o desde el</mark> <mark style="color:red;"></mark><mark style="color:red;">**Android Studio SDK Manager**</mark><mark style="color:red;">)</mark>
{% endhint %}

* `flutter doctor` nos **advierte** de que las **Android Licenses no han sido aceptadas**.  &#x20;

  Hay que  **aceptarlas**, por tanto, ejecutaremos el comando que se nos indica:&#x20;

  `flutter doctor --android-licenses`

![](/files/3IN9ibQPfTkgl0pHlvN1)

* Si es necesario, instalaremos también otras **dependencias** que nos falten (consultar al final de este documento el apartado: "Atencion usuarios Linux / Mac")

{% hint style="danger" %}
Si `flutter doctor` muestra una **ruta** **incorrecta** para el **Android SDK**, (por ejemplo, nos muestra /usr/lib/android-sdk y lo tenemos instalado en otra ruta) se **configurará** **manualmente ejecutando**:

`flutter config --android-sdk <ruta_al_sdk_Android>`
{% endhint %}

{% endstep %}

{% step %}

#### Instalar plugin de Flutter para Android Studio

Abrimos Android Studio y le añadimos el **plugin** de **Flutter** y **Dart**:&#x20;

&#x20;<https://flutter.dev/docs/get-started/editor>

> Se puede desarrollar aplicaciones Flutter en un simple editor de texto y la línea de comandos. Se recomienda utilizar un IDE: Visual Studio Code (rápido, estable y ligero) o Android Studio/IntelliJ&#x20;

{% hint style="info" %}
**Atención**: puede que si ejecutamos  `flutter doctor -v` no se reconozcan los plugins instalados en una versión del IDE más reciente.   No hay que preocuparse, los plugins funcionarán perfectamente.

<img src="/files/ZQjjfxst8epir6bH6SxK" alt="" data-size="original">
{% endhint %}

### Atención usuarios de Linux/Mac

<details>

<summary><mark style="color:green;">Atención usuarios Linux</mark></summary>

Si en Linux (Ubuntu, Fedora, Arch, etc.),  vemos el siguiente mensaj&#x65;**:**

<img src="/files/MjoUqDPbtP1Y8cMhEDVe" alt="" data-size="original">

Tendremos que **instalar** **paquetes** adicionales.

* For **Ubuntu**: `sudo apt-get install lib32stdc++6`
* For Fedora: `dnf install libstdc++.i686`
* For Arch: `pacman -S lib32-libstdc++5` along with the instructions on this link: <https://wiki.archlinux.org/index.php/Official_repositories#multilib>

</details>

<details>

<summary><mark style="color:purple;">Atención usuarios Mac</mark></summary>

Si ejecutamos `flutter doctor -v`  y observamos un mensaje similar al siguiente:

![](/files/Vt06wH4KVV7dI0mTYZO5)&#x20;

-> Hay un problema con el nombre del directorio, ejecutamos los comandos:

<img src="/files/CtHbzcbd54JDLwgxclwA" alt="" data-size="original">

-> Ejecutamos de nuevo `flutter doctor -v` para comprobar que se ha solucionado.

</details>

{% endstep %}
{% endstepper %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://ecm-pmdm-flutter.gitbook.io/1.-introduccion-a-flutter/2.-instalacion-del-flutter-sdk/instalacion-manual.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
