Frage

ich installiert Qt für Mac und bin Kompilieren mein Qt-Projekt nach dem Hinzufügen in der .proDatei

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

für die Geschwindigkeit zu optimieren.

Allerdings sehe ich immer, dass der Befehl, wo g ++ RAN ist, umfasst -Os, die für die Größe optimiert. Ich möchte es entfernen.

Ich habe versucht, verschiedene Ansätze, wie

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

und

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

Aber nichts. -Os erscheinen immer.

Wie kann ich das ändern?

Ich fand die qmake.conf Datei unter /usr/local/QT4.5/mkspecs. Es umfasst eine mac-g ++ conf-Datei, aber ich kann es nicht ändern, und chmod nicht funktioniert. Chmod. Mac-g ++ conf: Operation nicht zulässig

Irgendwelche Ideen?

War es hilfreich?

Lösung

Ich konnte dies mein Projekt bearbeite .proDatei lösen:

QMAKE_CXXFLAGS_RELEASE -= -O2
QMAKE_CXXFLAGS_RELEASE += -O3

i Nachweis erbracht, dass es in Kraft trat durch die Kompilierung Ausgabe zu überwachen.

Andere Tipps

Sie sollten qmake Befehl in Ihrem Projektverzeichnis ausführen, nachdem Sie die .pro Datei bearbeitet.

Der Befehl chmod schlägt fehl, weil das Verzeichnis von root (das heißt, nicht Ihre Benutzer) gehört.

Sie könnten damit umgehen, dass mit:

sudo chmod ....

Ich denke, meine große Frage ist, ob Sie wissen, dass O3 wirklich für Geschwindigkeit optimiert oder nicht. Als Pavel angegeben, können Sie die Makefile bearbeiten und manuell und Test bauen. Meine Vermutung ist, dass O3 nicht viel Unterschied machen und vielleicht etwas schlechter ausfallen.

Was Einstellung CXXFLAGS in Qt Creator, Ihre beste Wette ist, um den Anruf zu überschreiben zu lassen. Im Bereich "Projekte", gehen Sie zu "Steps Build" und "Make" und fügen Sie CXXFLAGS = '- O3 -fomit-frame-pointer' auf den "Make Argumente" Abschnitt

.

Ich hoffe, das hilft!

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top