Изменить флаги компиляции в Qt под Mac OS X?


Я установил интервала QT для Mac, и я компиляции мой проект Qt после добавления в .Файл Pro

CONFIG(release, debug|release):QMAKE_CXXFLAGS += -O3 -fomit-frame-pointer

Для оптимизации скорости.

Однако я всегда вижу, что команда, в которой выполняется g++, включает в себя-Os, которая оптимизируется по размеру. Я бы хотел его убрать.

Я попробовал несколько подходов, таких как

CONFIG(release, debug|release):QMAKE_CFLAGS_RELEASE -= -Os
CONFIG(release, debug|release):QMAKE_CXXFLAGS -= -Os

И

CONFIG(release, debug|release):QMAKE_CXXFLAGS = -O3 -fomit-frame-pointer
CONFIG(release, debug|release):QMAKE_CFLAGS_RELEASE = -O3 -fomit-frame-pointer
(no +)

Но ничего. - ОС всегда появляются.

Как мне это изменить?

Я нашел qmake.файл conf под /usr/местные/библиотеки Qt4.5/mkspecs. Он включает в себя mac-g++.conf файл, но я не могу его изменить, и chmod не работает: chmod: mac-g++.conf: операция не разрешена

Есть идеи?

3 3

3 ответа:

Я смог решить эту проблему, отредактировав файл. pro моего проекта:

QMAKE_CXXFLAGS_RELEASE -= -O2
QMAKE_CXXFLAGS_RELEASE += -O3

Я проверил, что он вступил в силу, отслеживая выходные данные компиляции.

Вы должны выполнить команду qmake в каталоге проекта после редактирования файла .pro.

Команда chmod не выполняется, поскольку этот каталог принадлежит root (т. е. не вашему пользователю).

Вы можете справиться с этим с помощью:

Sudo chmod ....

Я думаю, что мой большой вопрос заключается в том, знаете ли вы, что-O3 действительно оптимизирует скорость или нет. Как указал Павел, Вы можете отредактировать файл Makefile, построить его вручную и протестировать. Я думаю, что-O3 не будет иметь большого значения и может быть немного хуже.

Что касается установки CXXFLAGS в Qt Creator, ваш лучший выбор-это переопределить вызов, чтобы сделать. В разделе " Проекты "перейдите в раздел" этапы сборки "и" Make "и добавьте CXXFLAGS='-O3-fomit-frame-pointer' в раздел" Make arguments".

Надеюсь, это поможет!