Nota: Para este tutorial se ha empleado Windows 10 Pro y Visual Studio 2015


Como todos sabemos QGIS tienes grandes herramientas y muy buenos algoritmos y sobre todo los bindings de python para hacer maravillas, pero seguro que si eres desarrollador o simplemente eres curioso querrás ver sus tripas y poder modificar el código fuente y tal vez resolver alguna issue abierta.

Pues eso es lo que vamos a ver en esta entrada para así poder compilar y debuggear el Core de QGIS en Windows, lo cual es un poco más complejo y necesita más configuración que en Linux.

Antes de empezar necesitamos descargar algunos requisitos:

CMake
Cygwin
Git
OSGeo4W

Para la instalación de CMake y Git no tendremos que hacer ninguna modificación ya que los parámetros por defecto nos van a servir.

En la instalación de Cygwin, mantenemos el “directorio raíz” como C:\cygwin64 e instalamos los siguientes paquetes:

• Bison
• Flex
• git

La instalación git dentro de Cygwin nos permite usar el número de compilación actual al compilar QGIS.

Para la instalación de OSGeo4W, deberemos seleccionar «Instalación avanzada«. Haga clic en «Siguiente» y seleccionar «Instalar desde Internet”. Ahora hacemos clic en «Siguiente» y ponemos en «Directorio raíz» por ejemplo en mi caso D:\OSGeo4W64. Lo pongo en otra unidad para liberar espacio de la unidad principal.

qgis_dev_windows

Seleccionamos siguiente y lo dejamos por defecto. En la siguiente pantalla si estamos bajo un proxy, ponemos nuestros datos y si no es así simplemente le damos a siguiente y seleccionamos http://download.osgeo.org y click en “Siguiente”.

Ya desde aquí instalamos todos estos paquetes:

• oci-devel
• python3-gdal
• python3-jinja2
• python3-owslib
• python3-psycopg2
• python3-pygments
• qgis-dev-deps
• qt5-libs-debug-pdb
• qtwebengine-qt5-libs-debug
• qtwebkit-qt5-libs-debug

qgis_dev_windows1

Le damos a siguiente y dejamos que todo se instale y ¡voilá ya tenemos configurado OSGeo4W! Ya queda poco.

¿Que más nos falta? Pues una IDE para poder trabajar y para ello vamos a descargar e instalar Visual Studio 2015, la idea perfecta y es la que se debería emplear es la IDE propia de Qt “Qt Creator, pero configurar todo el entorno es realmente infernal en Windows, y aunque se puede hacer, no compensa el tiempo invertido, por lo que emplearemos como se ha comentado Visual Studio.

La ruta de instalación dejamos la de por defecto y bajo la opción “Custom”. seleccionamos “Visual C++” y en la sección de “Windows and Web Development/Universal Windows App Development Tools” seleccionamos Tools (1.4.1) and Windows 10 SDK (10.0.14393).

qgis_dev_windows2

Nota: Si tenemos problema con la instalación de la SDK deberemos instalar por separado Windows 10 SDK (10.0.14393).

qgis_dev_windows3

Una vez tenemos instalado Visual Studio ya no necesitamos instalar más programas ni librerías adicionales.

Lo siguiente que necesitamos es clonar el proyecto de QGIS. Para ello creamos un fork en nuestra cuenta de GitHub y luego simplemente nos lo clonamos en local.

qgis_dev_windows4

Una vez tenemos el código fuente QGIS creamos un fichero (por ejemplo en el escritorio) en cual llamaremos por ejemplo QGIS-Dev.bat con lo siguiente:

@echo off
:: Ruta instalación de Osgeo4W
set OSGEO4W_ROOT=D:\OSGeo4W64
:: Ruta al código fuente de QGIS
set SOURCE=D:\GitHub\QGIS
:: Ruta a la instalación de Visual Studio 2015
SET PATH=%PATH%;C:\VisualStudio2015\Common7\IDE\
cd %SOURCE%\ms-windows\osgeo4w
d:
call %SOURCE%\ms-windows\osgeo4w\msvc-env.bat x86_64
@cmd /k configonly.bat

Estos comandos nos han generado la solución de visual studio en: D:\Github\QGIS\ms-windows\osgeo4w\build-qgis-test-x86_64\qgis.sln

Ahora solo debemos abrir la solución escribiendo en la cmd abierta al ejecutar el bat anterior “devenv”,

qgis_dev_windows5

Esperaremos a que cargue y hacemos un build del proyecto “ALL BUILD”. En este punto debéis ser pacientes ya que el proceso tarda aproximadamente unos 40 minutos o más, pero todo dependerá de las características de vuestro PC.

Una vez se ha completado todo, debemos hacer click derecho sobre el proyecto y seleccionar la pestaña “debugging” en el apartado “Configuración” cambiamos “Command” a D:\Github\QGIS\ms-windows\osgeo4w\build-qgis-test-x86_64\output\bin\RelWithDebInfo\qgis.exe. y seleccionamos “OK”.

qgis_dev_windows6

Ahora simplemente le damos a “Start Debugging” o a F5.


Nota: Si nos sale un aviso avisándonos de “out of date” podemos simplemente hacer click en “No”.


Por fin, hemos tardado pero ya lo tenemos Compilado, así que ahora vamos a Debuggear el código.

En la parte de debug para poder ver el contenido de los objetos debemos cargar los símbolos (.pdb) en herramientas > opciones > depuración > símbolos.

qgis_dev_windows7

Y en las opciones generales chequeamos “Enable Native Edit and continue”.

qgis_dev_windows8

Y deschequeamos “Native compatibility mode”.

qgis_dev_windows9

Por otro lado cambiamos Debugger Type a «Mixed» en project properties -> Configuration Properties -> Debugging.

Ya lo tenemos, ahora vamos a poner un punto de ruptura, por ejemplo en la creación del menú contextual en los layer del TOC, el cual se crea al hacer click derecho sobre la capa.

qgis_dev_windows10

Y aquí podemos ver todo el contenido en este caso del objeto “layer”, (Se trata de un layer que he cargado manualmente en QGIS y al que le he dado click derecho para que llame a este método).

Ahora ya tenemos el entorno de desarrollo montado para compilar y debuggear QGIS en nuestra máquina, espero que haya sido de ayuda y mucha gente más se anime a desarrollar QGIS.

1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (5 votos, promedio: 4,20 de 5)

Cargando…

Formación de calidad impartida por profesionales

Online plugins en pyQGIS python en Qgis