Compilar para Windows

Last Updated on 2025-08-01

Esta es una guía para crear tu primera compilación de Overte para Windows de 64 bits.

Nota: Ahora utilizamos Visual Studio 2022 y Qt 5.15.x. Si va a actualizar desde versiones anteriores, desinstale completamente esas versiones antes de seguir esta guía.

Nota: Los prerrequisitos requieren aproximadamente 10 GB de espacio en su disco duro. También necesitará un sistema con al menos 8 GB de memoria principal.

Paso 1. Visual Studio & Python 3.x

Si no tiene la edición Community o Professional de Visual Studio 2022, descargue Visual Studio Community 2022. Aunque Visual Studio 2019 debería seguir funcionando, ya no le ofrecemos soporte y es posible que eliminemos sus soluciones alternativas en el futuro.

Al seleccionar los componentes, marque "Desarrollo de escritorio con C++".

Si aún no tiene instalado un entorno de desarrollo de Python 3.x y desea instalarlo con Visual Studio, marque "Desarrollo con Python". Si ya tiene instalado Visual Studio y necesita agregar Python, abra el panel de control "Agregar o quitar programas" y busque el "Instalador de Microsoft Visual Studio". Selecciónelo y haga clic en "Modificar". En el instalador, vuelva a seleccionar "Modificar", marque "Desarrollo con Python" y permita que el instalador aplique los cambios.

Note: MSVC 14.44.35207 seems to be bugged and cannot compile libnode. Get an older MSVC 143 version using .\VisualStudioSetup.exe modify --installPath "C:\Program Files\Microsoft Visual Studio\2022\Community" --add Microsoft.VisualStudio.Component.VC.14.33.17.3.x86.x64 (this installs version 14.33.31629). Notice how the relevant component has been added to the "Single components" section on the right. Make sure to reload your environment (by restarting your terminal for example), otherwise the new compiler version won't be found.

Paso 1a. Python

Si no desea usar la instalación de Python incluida con Visual Studio, puede descargar el instalador desde aquí. Asegúrese de tener la versión 3.6.6 o superior.

Paso 2. Dependencias de Python

En un terminal con permisos de administrador con acceso a pip de Python, deberá ejecutar el siguiente comando:

pip install distro setuptools html5lib

Si no usa una terminal con los permisos adecuados, obtendrá errores.

Paso 3. Instalando Conan

Descargue e instale Conan desde el sitio web de Conan. A continuación, añada el remoto de Overte a Conan:

conan remote add overte https://artifactory.overte.org/artifactory/api/conan/overte

We also need to generate a default Conan profile:

conan profile detect

Paso 4. Instalar CMake

Descargue e instale CMake, versión 3.15 o mayor.

Descargue el archivo cmake-[versión]-windows-x86_64.msi del sitio web de CMake. Durante la instalación, asegúrese de marcar la opción "Agregar CMake a la ruta del sistema para todos los usuarios" cuando se le solicite.

Step 5. Create conan environment variable

In the next step, you will use conan to install the dependencies required to build Overte. By default, conan will build and install the dependencies in <username>/.conan2. Because Windows doesn't support paths which are longer than 260 characters, we need to move this folder to a more shallow location like C:\. If you don't do this, some things will fail with No such file or directory, namely building Qt WebEngine from source.

Para crear esta variable:

  • Navegue hasta ‘Editar las variables de entorno del sistema’ a través del menú Inicio.

  • Seleccione 'Variables de entorno'

  • Seleccionar 'Nuevo'

  • Asigne "Variable name" a CONAN_HOME

  • Set "Variable value" to any directory that you have control over. For example C:\Conan2.

Asegúrate de copiar el contenido de tu antigua carpeta .conan2 o de volver a añadir el remoto del paso 2.

Step 6. (Optional) Node.JS and NPM

Instale la última versión LTS de Node.JS y NPM. Esto es necesario para compilar la consola del servidor y la documentación jsdoc, así como para el autocompletado de la consola de JavaScript.

Paso 7. Ejecución de CMake para generar archivos de compilación

Estas instrucciones solo aplican a Visual Studio 2022.

Automático

Hay un archivo por lotes para ejecutar automáticamente los siguientes comandos y facilitar su uso.

winprepareVS22.bat

Manual

En una consola de comandos (terminal) ejecute los siguientes comandos:

cd "%OVERTE_DIR%"
conan install . -b missing -pr=tools/conan-profiles/vs-22-release -of build
conan install . -b missing -pr=tools/conan-profiles/vs-22-debug -of build
cmake --preset conan-default

Donde %OVERTE_DIR% es el directorio del repositorio de Overte.

Nota: Después de ejecutar Conan, se recomienda ejecutar conan cache clean "*" -sbd para limpiar las carpetas de compilación creadas por Conan y ahorrar espacio en disco.

Paso 8. Compilando

Abra %OVERTE_DIR%\build\overte.sln usando Visual Studio.

Cambie la configuración de la solución (pestaña de menú situada debajo de la barra de menú, junto al botón verde de reproducción) de «Depurar» a «Lanzar» para obtener el mejor rendimiento.

Ejecute Compilar > Compilar solución.

Paso 9. Probando la interfaz

Crear otra variable de entorno (Ver el Paso #3)

  • Establezca "Variable name": _NO_DEBUG_HEAP

  • Coloque "Variable value": 1

Reinicie Visual Studio.

En Visual Studio, haz clic derecho sobre "interface" dentro de la carpeta Apps en el Explorador de soluciones y selecciona "Establecer como proyecto de inicio". Ejecuta desde la barra de menú: Depurar > Iniciar depuración.

Ahora deberías tener una compilación completa de Overte y poder ejecutar la Interface utilizando Visual Studio.

Nota: También puedes ejecutar la Interface iniciándola desde la línea de comandos o el Explorador de archivos desde %OVERTE_DIR%\build\interface\Release\interface.exe

Solución de Problemas

En caso de problemas después del Paso #7, intenta lo siguiente:

  • Elimina tu copia local clonada del repositorio de Overte

  • Reiniciar el computador

  • Volver a descargar el repositorio

  • Instrucciones para reiniciar desde el Paso #7

CMake muestra repetidamente el mismo mensaje de error después de que falla la compilación

Elimina el archivo CMakeCache.txt que se encuentra en el directorio %OVERTE_DIR%\build.

MSVC bugs

MSVC is apparently a buggy mess, and almost every version has something broken in it.

Available MSVC versions can be found here: https://learn.microsoft.com/en-us/visualstudio/install/workload-component-id-vs-community?view=vs-2022 Just search for Microsoft.VisualStudio.Component.VC.14. using your internet browser search.

v8_compiler.lib(v8_pch.obj) : error LNK2019: unresolved external symbol "protected: static class v8::internal::Handle<class v8::internal::NameDictionary> ?

This is a bug in MSVC 14.44.35207. Solution is to upgrade or downgrade from that specific version.

Currently (2025-06-28), this is the latest version, so we need to downgrade to an older version. A probably working version is MSVC 14.33.17.3, which can be installed using: .\VisualStudioSetup.exe modify --installPath "C:\Program Files\Microsoft Visual Studio\2022\Community" --add Microsoft.VisualStudio.Component.VC.14.33.17.3.x86.x64 Notice how the relevant component has been added to the "Single components" section on the right. Make sure to reload your environment (by restarting your terminal for example), otherwise the new compiler version won't be found.

draco.lib(point_cloud.obj) : error LNK2019: unresolved external symbol "__std_find_trivial_4"

This is a bug in MSVC 14.32.31326. Solution is to upgrade or downgrade from that specific version.

Install a probably working version using: .\VisualStudioSetup.exe modify --installPath "C:\Program Files\Microsoft Visual Studio\2022\Community" --add Microsoft.VisualStudio.Component.VC.14.33.17.3.x86.x64 Notice how the relevant component has been added to the "Single components" section on the right. Make sure to reload your environment (by restarting your terminal for example), otherwise the new compiler version won't be found.

Removing specific MSVC versions

To remove a version, replace --add with --remove. E.g. .\VisualStudioSetup.exe modify --installPath "C:\Program Files\Microsoft Visual Studio\2022\Community" --remove Microsoft.VisualStudio.Component.VC.14.31.17.1.x86.x64 Don't uninstall or manually delete the latest version! This will make your build tools unable to find Visual Studio. Instead, just install whatever compiler version you need. The last installed version will be given priority. If you don't know the version number Visual Studio uses to select MSVC versions, just open the VisualStudioSetup.exe directly, press "modify", and deselect it from the "Single components" section on the right. The tooltips help determining what is what.

"atlbase.h": No such file or directory

Sometimes the build process requires ATL support. To fix this, install "C++ vXX.XX (...) ATL (...)" replacing XX.XX with the first two numbers that you used to install an specific MSVC version above using the VisualStudioSetup.exe. E.g. "C++ v14.32 (...) ATL (...)".

warning : cannot resolve item 'api-ms-win-(...)-l1-1-0.dll'

You may be able to ignore this warning. My assumption is that the MSVC version used is incompatible with the currently installed Windows SDK, and Overte will just use the newer SDK during runtime.