¿Cambiar marcas de compilación en Qt en Mac OS X?
Pregunta
Instalé Qt para Mac, y estoy compilando mi proyecto Qt después de agregar en el archivo .Pro
CONFIG(release, debug|release):QMAKE_CXXFLAGS += -O3 -fomit-frame-pointer
para optimizar la velocidad.
Sin embargo, siempre veo que el comando donde se ejecuta g ++ incluye -Os, que optimiza el tamaño. Me gustaría eliminarlo.
Intenté varios enfoques, como
CONFIG(release, debug|release):QMAKE_CFLAGS_RELEASE -= -Os
CONFIG(release, debug|release):QMAKE_CXXFLAGS -= -Os
y
CONFIG(release, debug|release):QMAKE_CXXFLAGS = -O3 -fomit-frame-pointer
CONFIG(release, debug|release):QMAKE_CFLAGS_RELEASE = -O3 -fomit-frame-pointer
(no +)
Pero nada. -Siempre aparecen.
¿Cómo cambio esto?
Encontré el archivo qmake.conf en /usr/local/QT4.5/mkspecs. Incluye un archivo mac-g ++. Conf, pero no puedo cambiarlo, y chmod no funciona: chmod: mac-g ++. Conf: Operación no permitida
¿Alguna idea?
Solución
pude resolver esto editando el archivo .pro de mi proyecto:
QMAKE_CXXFLAGS_RELEASE -= -O2
QMAKE_CXXFLAGS_RELEASE += -O3
verifiqué que entró en vigencia al monitorear el resultado de la compilación.
Otros consejos
Debe ejecutar el comando qmake
en su directorio de proyecto después de editar el archivo .pro
.
El comando chmod falla porque ese directorio es propiedad de root (es decir, no de su usuario).
Puede manejar eso con:
sudo chmod ....
Creo que mi gran pregunta es si sabes que -O3 realmente optimiza la velocidad o no. Como indicó Pavel, puede editar el Makefile y compilarlo manualmente y probarlo. Supongo que -O3 no hará una gran diferencia y podría ser un poco peor.
En cuanto a configurar CXXFLAGS en Qt Creator, su mejor opción es anular la llamada a Make. En el " Proyectos " sección, vaya a " Construir pasos " y "Hacer" y agregue CXXFLAGS = '- O3 -fomit-frame-pointer' al " Hacer argumentos " sección.
¡Espero que eso ayude!