Preguntas frecuentes Qt


Table of Contents

1. En Qt Creator, cuando compilo se queda a mitad y dice que falta ... (no me acuerdo que)
2. En Linux, mi programa compila bien pero después no se ejecuta
3. En Windows, al intentar ejecutar el programa compilado sale "Error ... mingw10.dll ..."
4. En Qt Creator, compilo un proyecto que viene de otra plataforma y me da un error en los "objetos"
5. En Linux, cambio cosas de un formulario Designer pero, al compilar, parece que no ha cambiado nada
6. Quiero hacer un instalador para mi programa Qt

Última revisión: 3 de noviembre de 2010

Lista de dudas y pegas que han ido surgiendo y como nos las hemos apañado.

1. En Qt Creator, cuando compilo se queda a mitad y dice que falta ... (no me acuerdo que)

Una de dos, o solo se ha instalado el editor (Qt Creator), o se ha instalado el editor y después el SDK (Software Development Kit que se dice).

Si es lo primero, quizá es mejor desinstalar el editor, descargarlo la versión completa y volverlo a instalar.

Si es lo segundo. Abrir Qt Creator, entrar en Herramientas->Opciones->Qt4->Qt versions y agregar (con el +) una nueva versión.

Hay que buscar la ruta donde se ha metido Qt y meterla también para los ejecutables de Qt y para el compilador de C.

Hay que elegir también la versión de Qt. Elegir lo que salga y ya esta. La siguiente imagen es una muestra de la ventana que sale.

Figure 1. Dialogo para configurar la versión de Qt

Dialogo para configurar la versión de Qt

2. En Linux, mi programa compila bien pero después no se ejecuta

Todos tenemos el vicio de darle a "Aceptar", "Aceptar" ... "Aceptar" a los instaladores, y con el instalador de Qt puede haber ocurrido lo mismo.

Por una vez, mira lo que te va diciendo el instalador de Qt e instala los paquetes adicionales que te recomienda.

Otro paquete que hay que instalar es el compilador "g++". Búscalo con el Synaptic e instálalo.

Si sigue pasando con la próxima versión, incorporamos aquí los comentarios.

3. En Windows, al intentar ejecutar el programa compilado sale "Error ... mingw10.dll ..."

Los programas hechos con Qt (y con Builder, pero no lo sabíais) se apoyan en un montón de librerías dinámicas adicionales. Para que el programa funcione, es necesario que encuentre esas librerías.

Un apaño provisional para no destrozar mucho Windows es modificar la variable "PATH" del S.O. y decirle donde están esas librerías.

Los paso a seguir son:

-Ve a MI PC y pulsa con el botón derecho del ratón.

-Elige propiedades.

-Elige opciones avanzadas.

-Elige "Variables de entorno".

-Modifica la variable "PATH" añadiendo al final ";C:\Qt\2009.3\bin" o similar en función de donde se ha instalado el programa.

IMPORTANTEEEEEEEE: No te cargues nada del PATH o, posiblemente, un montón de programas dejaran de funcionar.

La siguiente imagen muestra los menús accedidos.

Figure 2. Cargándose Windows

Cargándose Windows

4. En Qt Creator, compilo un proyecto que viene de otra plataforma y me da un error en los "objetos"

Para que un proyecto Qt se construya correctamente, es necesario que qmake haya configurado correctamente las herramientas de compilación de la plataforma destino.

Si, por ejemplo, un proyecto se ha construido en Linux y se copia a Windows y se intenta construir de nuevo, entonces es probable que se produzca este problema ( del que no tiene la culpa Qt).

Para solucionarlo se hará:

  • Seleccionar el menú de la barra superior "Construir"->"Ejecutar qmake".

  • Y seleccionar en el menú de la barra superior "Construir -> "Reconstruir todo".

Figure 3. Menú construir

Menú construir

5. En Linux, cambio cosas de un formulario Designer pero, al compilar, parece que no ha cambiado nada

Apaño hasta que sepamos que ocurre: borra los archivos moc_* y ui_* y recompila.

6. Quiero hacer un instalador para mi programa Qt

Para hacer un "instalador" que meta nuestro programa en una carpeta, cree un enlace en el menú "Inicio", etc. se puede recurrir a software especializado.

En el siguiente enlace se habla de cómo aplicarlo a Qt: http://developer.qt.nokia.com/wiki/BuildingQtInstallers

(Comprovar Nullsoft)