plugin para open license gratis full descargar creator windows qt 64bit qt4 qmake

windows - para - qt license



Identificador para la configuraciĆ³n de win64 en Qmake (5)

¿Hay un identificador "win64" en los archivos del proyecto Qmake? La documentación avanzada de Qt Qmake no menciona más que unix / macx / win32.

Hasta ahora he intentado usar:

win32:message("using win32") win64:message("using win64") amd64:message("using amd64")

El resultado es siempre "usar win32".

¿Debo usar un archivo de proyecto separado para proyectos x32 y x64, para que compilen contra las bibliotecas correctas? ¿Hay alguna otra forma de identificar entre entornos de 32 bits y de 64 bits?


ACTUALIZACIÓN: desde hace muy poco, Qt tiene una forma de hacerlo de forma transparente y fácil, sin molestias manuales:

win32-g++:contains(QMAKE_HOST.arch, x86_64):{ do something }

Fuente: las nuevas preguntas frecuentes de Qt Dev


Desde Qt5 puede usar QT_ARCH para detectar si su configuración es 32 o 64. Cuando el objetivo es de 32 bits, eso devuelve i386 y en el caso de un destino de 64 bits tiene el valor de x86_64 . Entonces se puede usar como:

contains(QT_ARCH, i386) { message("32-bit") } else { message("64-bit") }


He descubierto una forma de hacerlo.

Qt le permite pasar parámetros de configuración arbitrarios que puede usar para separar los objetivos.

Al tener una configuración condicional en su archivo de proyecto:

CONFIG(myX64, myX64|myX32) { LIBPATH += C:/Coding/MSSDK60A/Lib/x64 } else { LIBPATH += C:/Coding/MSSDK60A/Lib }

y pasando esa configuración personalizada a qmake con

qmake CONFIG+=myX64

obtienes el resultado deseado


Lo hago así

win32 { ## Windows common build here !contains(QMAKE_TARGET.arch, x86_64) { message("x86 build") ## Windows x86 (32bit) specific build here } else { message("x86_64 build") ## Windows x64 (64bit) specific build here } }


No, pero puedes crear y usar una nueva mkspec, creo que qmake también define un identificador de plataforma con el nombre de la mkspec actual. ¿Por qué necesitas probar 64 bits?

Caña