# Gestión de compilación avanzada

## Configuraciones de construcción múltiple

(... pendiente de escribir ...)

## Compilación multiplataforma

Cuando dispone de compiladores multiplataforma adecuados, puede compilar sus programas para procesadores y sistemas operativos diferentes a los del sistema donde de ejecutan &kdevelop; y el compilador. La colección de compiladores &gcc; de &GNU; se puede configurar y compilar como compilador multiplataforma, siempre que la compile usted mismo . Consulte las páginas info de GCC para más información. Algunas distribuciones &Linux; también proporcionan paquetes binarios.

Un paquete basado en automake se puede compilar fácilmente para múltiples plataformas especificando la opción `--host` en el guión «configure» y estableciendo las variables de entorno `CC` y `CXX` para que apunten a los respectivos binarios de compilación multiplataforma. A menudo deseará alternar entre una versión multiplataforma de su aplicación y otra compilada para su sistema de desarrollo. Para ello, resulta ventajoso usar la capacidad que tiene &kdevelop; para crear múltiples configuraciones de construcción, como se explica en buildconfigurations. Una vez que haya creado una nueva configuración de construcción para compilación multiplataforma en el diálogo Proyecto Opciones del proyecto..., añada la opción

    --host=plataforma

a las opciones de configuración. El nombre `plataforma` puede constar de los elementos

    cpu-fabricante-sistema_operativo

o

    cpu-fabricante-kernel-sistema_operativo

Para muchas combinaciones puede usar una forma corta, como por ejemplo i386-linux o arm-elf.

## Qt/Embedded

&qte; es una versión de la biblioteca &Qt; que no usa el sistema X-Window, sino que dibuja directamente en el framebuffer de los sistemas &Linux;. Por lo tanto es interesante para sistemas empotrados que poseen rígidas limitaciones en lo que se refiere a uso de la memoria total del sistema. Su &API; es completamente compatible con la de la versión X11.

Desarrollar una aplicación para &qte; con &kdevelop; no es muy diferente a desarrollar un programa para la versión X11 de &Qt;. De hecho, puede usar la misma base de código para ambas versiones. Si usa la gestión de proyectos automática, puede cambiar a la versión empotrada pasando el argumento `--enable-embedded` al guión «configure». Puede configurar esto en el diálogo Proyecto Opciones del proyecto..., en el apartado Opciones de configure. Puede especificar el directorio donde está instalado &qte; con la opción `--with-qt-dir=DIR`.

Tras configurar y compilar su aplicación con estas opciones, será enlazada con la biblioteca `libqpe.so`. Esta versión de su aplicación no funcionará correctamente si usa X11. Para probarla, ejecútela bajo control del programa qvfb (&Qt; Virtual Frame Buffer). Para ello, inicie qvfb y ejecute luego su aplicación con

    app -qws -display QVFb:0

Naturalmente, cuando tiene una versión funcional de su aplicación, deseará probarla con el procesador de destino. Para ello, probablemente será conveniente crear múltiples configuraciones de construcción, como se ha explicado anteriormente, de modo que pueda cambiar rápidamente entre la versión que se ejecuta en su sistema de desarrollo y la versión que se ejecuta en el sistema de destino.

Las aplicaciones para &qte; funcionan normalmente como aplicaciones únicas en el dispositivo para el que están diseñadas. Trolltech también soporta Qtopia, que es una colección de aplicaciones para PIM, navegación web y otras tareas que funcionan conjuntamente de una manera consistente. Este es, por ejemplo, el entorno estándar de Sharp Zaurus. Puede escribir aplicaciones que se integren en este entorno usando el SDK de Qtopia. Esto implica que la clase de su aplicación debe ser una subclase de `QPEApplication`, y que debe enlazarla con la biblioteca `libqpe.so`. Si desarrolla su aplicación usando la gestión de proyectos automática, deberá añadir `--enable-qtopia` a las opciones de «configure».