Up to date

This page is up to date for Godot 4.2. If you still find outdated information, please open an issue.

Compilando para Windows

Ver también

Esta página describe cómo compilar el editor de Windows y las plantillas de exportación desde el código fuente. Si deseas exportar tu proyecto a Windows, lee Exportación para Windows.

Requerimientos

Para compilar en Windows, se requiere lo siguiente:

  • Visual Studio Community, versión 2017 o posterior. Se recomienda utilizar VS 2019. Asegúrate de leer las advertencias sobre la instalación de Visual Studio a continuación, o de lo contrario tendrás que volver a ejecutar/descargar el instalador.

  • MinGW-w64 with GCC can be used as an alternative to Visual Studio. Be sure to install/configure it to use the posix thread model. Important: When using MinGW to compile the master branch, you need GCC 9 or later.

  • Python 3.6+. Make sure to enable the option to add Python to the ``PATH`` in the installer.

  • SCons 3.0+ build system. Using the latest release is recommended, especially for proper support of recent Visual Studio releases.

Nota

Si tienes Scoop instalado, puedes instalar fácilmente MinGW y otras dependencias utilizando el siguiente comando:

scoop install gcc python scons make mingw

Nota

Si tienes MSYS2 instalado, puedes instalar fácilmente MinGW y otras dependencias utilizando el siguiente comando:

pacman -S mingw-w64-x86_64-python3-pip mingw-w64-x86_64-gcc  \
    mingw-w64-i686-python3-pip mingw-w64-i686-gcc make

Para cada subsistema de MSYS2 MinGW, debes ejecutar pip3 install scons en su shell.

Ver también

Para obtener el código fuente de Godot para compilarlo, consulta la sección Consiguiendo el código fuente.

Para obtener una visión general del uso de SCons para Godot, consulta la sección Introducción al sistema de compilación.

Configurando SCons

Para instalar SCons, abre la línea de comandos y ejecuta el siguiente comando:

python -m pip install scons

Si te aparece el mensaje Defaulting to user installation because normal site-packages is not writeable, es posible que debas ejecutar ese comando nuevamente con permisos elevados. Abre una nueva línea de comandos como administrador y luego ejecuta el comando nuevamente para asegurarte de que SCons esté disponible desde la variable de entorno PATH.

Para verificar si has instalado Python y SCons correctamente, puedes escribir python --version y scons --version en una ventana de comandos (cmd.exe).

Si los comandos anteriores no funcionan, asegúrate de agregar Python a la variable de entorno PATH después de instalarlo y luego verifica nuevamente. Puedes hacer esto ejecutando nuevamente el instalador de Python y habilitando la opción para agregar Python al PATH.

Si SCons no puede detectar tu instalación de Visual Studio, es posible que tu versión de SCons sea demasiado antigua. Actualízala a la última versión con el comando python -m pip install --upgrade scons.

Cuestiones a tener en cuenta al instalar Visual Studio

Si estás instalando Visual Studio 2017 o 2019, asegúrate de habilitar C++ en la lista de flujos de trabajo a instalar.

Si estás instalando Visual Studio 2015, asegúrate de realizar una instalación Personalizada en lugar de Típica y selecciona C++ como un lenguaje en esa opción.

Si ya has cometido el error de instalar Visual Studio sin el soporte de C++, puedes ejecutar el instalador nuevamente; debería presentarte un botón de Modificar. Ejecutar el instalador desde Agregar o quitar programas solo te dará la opción de Reparar, que no te permitirá instalar las herramientas de C++.

Descargando el código fuente de Godot

Consulta la sección Consiguiendo el código fuente para obtener instrucciones detalladas.

El tutorial partirá de ahora bajo la suposición de que has colocado el código fuente en C:\godot.

Advertencia

Para evitar ralentizaciones causadas por el escaneo continuo de virus durante la compilación, agrega la carpeta de código fuente de Godot a la lista de excepciones en tu software antivirus.

For Windows Defender, hit the Windows key, type "Windows Security" then hit Enter. Click on Virus & threat protection on the left panel. Under Virus & threat protection settings click on Mange Settings and scroll down to Exclusions. Click Add or remove exclusions then add the Godot source folder.

Compilando

Seleccionando un compilador

SCons encontrará y utilizará automáticamente una instalación existente de Visual Studio. Si no tienes Visual Studio instalado, intentará usar MinGW en su lugar. Si ya tienes Visual Studio instalado y deseas usar MinGW, agrega use_mingw=yes en la línea de comandos de SCons. Ten en cuenta que las compilaciones de MSVC no se pueden realizar desde las terminales de MSYS2 o MinGW. En su lugar, utiliza cmd.exe o PowerShell.

Durante el desarrollo, usar el compilador de Visual Studio suele ser una mejor idea, ya que vincula el binario de Godot mucho más rápido que MinGW. Sin embargo, MinGW puede producir binarios más optimizados utilizando la optimización en tiempo de enlace (consultar más abajo), lo que lo convierte en una mejor opción para su uso en producción.

Ejecutando SCons

Después de abrir un símbolo del sistema, cambia al directorio raíz del código fuente del motor (usando cd) y escribe:

C:\godot> scons platform=windows

Nota

Cuando compiles con múltiples hilos de CPU, SCons puede mostrar un aviso sobre la falta de pywin32. Puedes ignorar este aviso de forma segura.

If all goes well, the resulting binary executable will be placed in C:\godot\bin\ with the name godot.windows.editor.x86_32.exe or godot.windows.editor.x86_64.exe. By default, SCons will build a binary matching your CPU architecture, but this can be overridden using arch=x86_64 or arch=x86_32.

Este archivo ejecutable contiene todo el motor y se ejecuta sin ninguna dependencia. Al ejecutarlo, se abrirá el Administrador de Proyectos.

Nota

If you are compiling Godot for production use, then you can make the final executable smaller and faster by adding the SCons option target=template_release.

If you are compiling Godot with MinGW, you can make the binary even smaller and faster by adding the SCons option lto=full. As link-time optimization is a memory-intensive process, this will require about 7 GB of available RAM while compiling.

Nota

Si deseas utilizar configuraciones de editor separadas para tus propias compilaciones de Godot y las versiones oficiales, puedes habilitar Modo autónomo creando un archivo llamado ._sc_ o _sc_ en la carpeta bin/.

Desarrollo en Visual Studio

No es necesario utilizar un IDE para compilar Godot, ya que SCons se encarga de todo. Sin embargo, si tienes la intención de desarrollar el motor o depurar el código C++ del motor, es posible que estés interesado en configurar un editor de código o un IDE.

Los editores basados en carpetas no requieren una configuración particular para empezar a trabajar con el código de Godot. Sin embargo, para editar proyectos con Visual Studio, necesitan ser configurados como una solución.

Puedes crear una solución de Visual Studio a través de SCons ejecutando SCons con el parámetro vsproj=yes, de esta manera:

scons p=windows vsproj=yes

Ahora podrás abrir el código fuente de Godot en una solución de Visual Studio y compilar Godot usando el botón Build de Visual Studio.

Ver también

Consulta Visual Studio para obtener más detalles.

Compilando para Windows desde otros sistemas operativos

Si eres usuario de Linux o macOS, necesitarás instalar MinGW-w64, el cual generalmente viene en variantes de 32 bits y 64 bits. Los nombres de los paquetes pueden variar según tu distribución, aquí algunos nombres conocidos:

Arch Linux

pacman -Sy mingw-w64

Debian / Ubuntu

apt install mingw-w64

Fedora

dnf install mingw64-gcc-c++ mingw64-winpthreads-static \
            mingw32-gcc-c++ mingw32-winpthreads-static

macOS

brew install mingw-w64

Mageia

urpmi mingw64-gcc-c++ mingw64-winpthreads-static \
      mingw32-gcc-c++ mingw32-winpthreads-static

Antes de intentar la compilación, SCons verificará la presencia de los siguientes binarios en la variable de entorno PATH:

i686-w64-mingw32-gcc
x86_64-w64-mingw32-gcc

If the binaries are not located in the PATH (e.g. /usr/bin), you can define the following environment variable to give a hint to the build system:

export MINGW_PREFIX="/path/to/mingw"

Where /path/to/mingw is the path containing the bin directory where i686-w64-mingw32-gcc and x86_64-w64-mingw32-gcc are located (e.g. /opt/mingw-w64 if the binaries are located in /opt/mingw-w64/bin).

Para asegurarte de que estás haciendo las cosas correctamente, ejecuta lo siguiente en la terminal y deberías obtener un compilador funcional (la versión puede variar según tu sistema):

${MINGW_PREFIX}/bin/x86_64-w64-mingw32-gcc --version
# x86_64-w64-mingw32-gcc (GCC) 13.2.0

Nota

When cross-compiling for Windows using MinGW-w64, keep in mind only x86_64 and x86_32 architectures are supported. Be sure to specify the right arch= option when invoking SCons if building from a different architecture.

Solución De Problemas

La compilación cruzada desde algunas versiones de Ubuntu puede dar lugar a este error, debido a una configuración predeterminada que no incluye soporte para el enhebrado POSIX.

Puedes cambiar esa configuración siguiendo estas instrucciones, para 64 bits:

sudo update-alternatives --config x86_64-w64-mingw32-gcc
<choose x86_64-w64-mingw32-gcc-posix from the list>
sudo update-alternatives --config x86_64-w64-mingw32-g++
<choose x86_64-w64-mingw32-g++-posix from the list>

Y para 32-bit:

sudo update-alternatives --config i686-w64-mingw32-gcc
<choose i686-w64-mingw32-gcc-posix from the list>
sudo update-alternatives --config i686-w64-mingw32-g++
<choose i686-w64-mingw32-g++-posix from the list>

Para crear las plantillas de exportación para Windows

Las plantillas de exportación para Windows se crean compilando Godot sin el editor, utilizando las siguientes banderas:

C:\godot> scons platform=windows target=template_debug arch=x86_32
C:\godot> scons platform=windows target=template_release arch=x86_32
C:\godot> scons platform=windows target=template_debug arch=x86_64
C:\godot> scons platform=windows target=template_release arch=x86_64

Si planeas reemplazar las plantillas de exportación estándar, copia estas a la siguiente ubicación, sustituyendo <version> por el identificador de versión (como 3.1.1.stable o 3.2.dev):

%USERPROFILE%\AppData\Roaming\Godot\templates\<version>\

Con los siguientes nombres:

windows_32_debug.exe
windows_32_release.exe
windows_64_debug.exe
windows_64_release.exe

Sin embargo, si estás utilizando módulos personalizados o código de motor personalizado, es posible que desees configurar tus binarios como plantillas de exportación personalizadas aquí:

../../../_images/wintemplates.png

En este caso, no es necesario copiarlos; simplemente haz referencia a los archivos resultantes en el directorio bin\ de la carpeta de origen de Godot. De esta manera, la próxima vez que compiles, los tendrás automáticamente como plantillas personalizadas referenciadas.