Вы находитесь на странице: 1из 5

TUTORIAL DE QMAKE

Traduccin Johon
doc.qt.io
Este tutorial ensea cmo utilizar qmake. Le recomendamos que lea la gua del usuario
qmake despus de completar este tutorial.

INICIANDO CON LO SIMPLE


Asumimos que ha terminado una implementacin bsica de una aplicacin, y ha creado los
siguientes archivos:
hello.cpp
hello.h
main.cpp
Encontraremos los archivos en example/qmake/tutorial (Ejemplo) de la distribucin de Qt.
Solo otra cosa debe saberse acerca de la configuracin de la aplicacin es que est escrito
en Qt . Primero, con su editor de texto simple (o un IDE), cree un archivo llamado hello.pro
en example/qmake/tutorial. La primera cosa que hay que hacer es aadir las lneas que
indican a qmake acerca de los archivos de origen y cabecera que son parte de su proyecto
de
desarrollo
.
Vamos a aadirlos en el archivo de proyecto que se cre (hello.pro). Para ello es necesario
utilizar la variable SOURCES. Solo comienza una nueva lnea con SOURCES += y escribe
hello.cpp despus de ella. Deberas tener algo como esto:
SOURCES += hello.cpp
Repetimos esto para cada archivo del proyecto , hasta que nos encontramos con lo
siguiente :
SOURCES += hello.cpp
SOURCES += main.cpp
si lo prefieres puedes usar una sentencia de escape \
SOURCES

hello.cpp

main.cpp
Ahora que los archivos de origen se listaron en el archivo de proyecto, hay que aadir los
archivos de cabecera . Estos se aaden exactamente de la misma manera que los archivos
de origen, salvo que el nombre de la variable que utilizamos es HEADERS.

Una vez terminado, el archivo de proyecto debera quedar como :


HEADERS += hello.h
SOURCES += hello.cpp
SOURCES += main.cpp
El nombre del objeto creado se establece automticamente; es el mismo que el archivo de
proyecto, pero con el sufijo correspondiente a la plataforma. Por ejemplo, si el archivo de
proyecto se llama hello.pro, el objeto debe ser Hello.exe en Windows y hello en Unix . Si
desea utilizar un nombre diferente se puede establecer en el archivo de proyecto :
TARGET = helloworld
El ltimo paso consiste en establecer la variable CONFIG. Dado que se trata de una
aplicacin Qt, tenemos que poner qt en la lnea CONFIG para que qmake aadirn las
libreras relevantes que se enlazaran y garantice la construccin para moc y UIC que son
incluidos
en
el
archivo
Makefile
generado.
El archivo de proyecto terminado debera tener este aspecto :
CONFIG
HEADERS
SOURCES
SOURCES += main.cpp

+=
+=
+=

qt
hello.h
hello.cpp

Ahora puedes utilizar qmake para generar un Makefile para tu aplicacin. En la lnea de
comandos (consola, terminal o cmd de windows), en el directorio de tu proyecto, escribe lo
siguiente :
qmake -o Makefile hello.pro
entonces escriba make o nmake dependiendo del compilador que utilice.
Para los usuarios de Visual Studio, qmake tambin puede generar archivos .dsp o .vcproj,
por ejemplo :
qmake -tp vc hello.pro

COMO HACER UNA APLICACIN DEPURABLE


La versin liberada de una aplicacin no contiene smbolos de ninguna depuracin u otra
informacin de depuracin. Durante el desarrollo es til para producir una versin de
depuracin de la aplicacin que tiene la informacin relevante. Esto se logra fcilmente
mediante la adicin de depuracin a la variable CONFIG en el archivo de proyecto .
Por ejemplo:

CONFIG
HEADERS
SOURCES
SOURCES += main.cpp

+=

qt

debug
hello.h
hello.cpp

+=
+=

Use qmake como antes para generar un Makefile y ser capaz de obtener informacin til
sobre la aplicacin cuando se ejecuta en un entorno de depuracin.

ADICIONANDO UNA PLATAFORMA ESPEFICICA EN EL CODIGO FUENTE


Despus de unas horas de codificacin, debio haber hecho parte de tu aplicacion en
una plataforma especifica, y decidi mantener el cdigo separado de una plataforma
independiente. Por lo que ahora tiene dos nuevos archivos a incluir en el archivo de
proyecto: hellowin.cpp y hellounix.cpp. No podemos solo aadir estos a la variable
SOURCES ya que esto har poner ambos archivos en el Makefile. Por lo tanto, lo
que tenemos que hacer aqu es el usar el ambito en el cual sera procesados
dependiendo de cualquier plataforma en la que corra qmake.
Un mbito de aplicacin sencilla que agregar en el archivo hello.pro dependiente
de la plataforma para Windows es el siguiente :
win32
SOURCES

+=

{
hellowin.cpp

entonces si qmake se ejecuta en Windows, se adicionara hellowin.cpp a la lista del


archivo fuente. Si qmake se ejecuta en cualquier otra plataforma, simplemente sera
ignorado. Ahora todo lo que queda por hacer es crear un espacio para el archivo
especifico
de
unix.
Cuando haya hecho esto, el archivo de proyecto debera quedar asi:
CONFIG
HEADERS
SOURCES
SOURCES
win32

+=

qt

+=

debug
hello.h
hello.cpp
main.cpp
{
hellowin.cpp

+=

{
hellounix.cpp

+=
+=
+=
SOURCES

}
unix
SOURCES
}
Ahora utilice qmake para generar el archivo Makefile.
DETENER QMAKE SI UN ARCHIVO NO EXISTE

Puede que no desea crear un Makefile si no existe un archivo determinado. Podemos


comprobar si existe un archivo utilizando la funcin exists( ). Podemos parar el
procesamiento de qmkae mediante el uso de la funcin de error( ) Esto funciona de la
misma manera que hace el alcance en la aplicacion. Slo tiene que sustituir la condicin de
alcance con la funcin. si quieres comprobar el archivo main.cpp debe ser asi:
!exists(

main.cpp
error(
"No

)
main.cpp

file

found"

{
)

El simbolo ! se utiliza para negar lo que se comprueba ; es decir, exists ( main.cpp )


si el archivo existe es cierto y !exists ( main.cpp ) si no existe el archivo, es cierto.
El archivo hello.pro nos deberia ir quedando asi:
CONFIG
HEADERS
SOURCES
SOURCES
win32

+=

qt

+=

debug
hello.h
hello.cpp
main.cpp
{
hellowin.cpp

+=

{
hellounix.cpp

+=
+=
+=
SOURCES

}
unix
SOURCES
}
!exists(

main.cpp
error(
"No

)
main.cpp

file

found"

{
)

}
Usa qmake para generar un Makefile. si renombras temporalmente main.cpp,
puedes ver el mensaje y qmkae detendra el proceso.
COMPROBACION DE MAS DE UNA CONDICION
Supongamos que utiliza Windows y desea ser capaz de ver la salida de una
instruccion con qDebug () cuando se ejecuta la aplicacin en la lnea de comandos.
A menos que crea la aplicacin con el ajuste de consola apropieado, no ver la
salida. Podemos poner fcilmente la consola en la lnea de CONFIG de modo que
en en windows se tenga que ajustas el Makefile. Sin embargo, digamos que slo
queremos aadir la lnea CONFIG si se ejecutan en Windows y cuando el depurador
este en la linea de CONFIG. Esto requiere el uso de dos mbitos anidados; solo
crear uno, crear otro en su interior, Ponga la configuracin para ser procesados
dentro del ltimo alcance, como esto:

win32
debug
CONFIG
+=

{
{
console
}

CONFIG += qt debug
HEADERS += hello.h
SOURCES += hello.cpp
SOURCES += main.cpp
win32 {
SOURCES += hellowin.cpp
}
unix {
SOURCES += hellounix.cpp
}
!exists( main.cpp ) {
error( "No main.cpp file found" )
}
win32:debug {
CONFIG += console
}

Eso es! Ahora ha completado el tutorial para qmake , y estn listos para escribir
archivos de proyecto para sus proyectos de desarrollo

Вам также может понравиться