Während andere Quelldateien die Standardflags verwenden? Einige meiner Quelldateien benötigen zusätzliche C++ - Präprozessordefinitionen. Ich benutze Qt 5. Ich habe nur gefunden, dass QMAKE_CXXFLAGS für globale Verwendung in qmake-Projekten gedacht ist.Wie Compiler-Flag zu einer einzigen Quelldatei mit qmake?
Antwort
Dies ist, was früher in der Theorie in der Quelle Qt für GUI Malerei getan werden selbst:
SOURCES_NOOPTIMIZE = somefile.cpp
nooptimize.name = nooptimize
nooptimize.input = SOURCES_NOOPTIMIZE
nooptimize.dependency_type = TYPE_C
nooptimize.variable_out = OBJECTS
nooptimize.output = ${QMAKE_VAR_OBJECTS_DIR}${QMAKE_FILE_IN_BASE}$${first(QMAKE_EXT_OBJ)}
nooptimize.commands = $${QMAKE_CXX} $(CXXFLAGS) -O0 $(INCPATH) -c ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT} # Note the -O0
QMAKE_EXTRA_COMPILERS += nooptimize
Siehe auch die erweiterte Nutzung in the documentation wie ein Compiler hinzuzufügen:
Individuelle Compiler Spezifikationen unterstützen die folgenden Mitglieder:
Mitglied Beschreibung
Befehle Die Befehle zum Generieren der Ausgabe vom Eingang.
CONFIG Spezifische Konfigurationsoptionen für den benutzerdefinierten Compiler. Einzelheiten finden Sie in der Tabelle CONFIG.
depend_command Gibt einen Befehl verwendet, um die Liste der Abhängigkeiten für die Ausgabe zu erzeugen.
dependency_type Gibt den Typ der Datei, die Ausgabe ist. Wenn es ein bekannter Typ ist (z. B. TYPE_C, TYPE_UI, TYPE_QRC), wird es als einer dieser Dateitypen behandelt.
abhängig Gibt die Abhängigkeiten der Ausgabedatei an.
Eingang Die Variable, die Dateien an, die mit dem benutzerdefinierten Compiler verarbeitet werden sollen.
Name Eine Beschreibung dessen, was der Brauch Compiler tut. Dies wird nur in einigen Backends verwendet.
Ausgang Der Dateiname, der von dem kundenspezifischen Compiler erstellt wird.
ausgabe Legt eine benutzerdefinierte Qmake Funktion, die den Dateinamen angeben verwendet wird, erstellt werden.
Variablen Zeigt an, dass die hier angegebenen Variablen mit $ (QMAKE_COMP_VARNAME) ersetzt werden, wenn in der Pro-Datei als $ (VARNAME) bezeichnet.
variable_out Die Variable, dass die Dateien aus der Ausgabe erstellt sollte hinzugefügt werden.
- 1. Erstellen mehrerer Dateien aus einer einzigen Quelldatei
- 2. Komprimieren einer Python-Anwendung in einer einzigen Quelldatei
- 3. Hinzufügen einer Definition zu qmake MIT einem Wert?
- 4. Makefile extrahieren Teil des Dateipfads als Compilerflag
- 5. qmake QMAKE_EXTRA_TARGETS mit VS2010
- 6. Wie CRLF mit Lf in einer einzigen Datei zu ersetzen
- 7. QMake: Wie funktionieren Scopes?
- 8. Verknüpfung mit einer Debug/Release-Bibliothek mit qmake/Qt Creator
- 9. GNU Makefile-Regel, die ein paar Ziele aus einer einzigen Quelldatei erzeugt
- 10. Wie generieren SLN/VCPROJ qmake mit
- 11. Compileranbieter/-version mit qmake finden
- 12. Verwenden von Unicode in einer C++ - Quelldatei
- 13. Typescript kompilieren zu einer einzigen Datei
- 14. Kivy: Kompilieren zu einer einzigen ausführbaren Datei
- 15. Telling qmake, um Abhängigkeit zu kompilieren lib
- 16. Wie zu unterschiedlichen Ergebnissen von einer einzigen SQL-Überprüfung
- 17. Mehrere toMany Beziehungen zu einer einzigen Tabelle
- 18. Mehrere Fremdschlüssel zu einer einzigen Spalte
- 19. Reihenfolge der Funktionen in einer Python-Quelldatei
- 20. Extrahieren von Eigenschaftsnamen aus einer C# -Quelldatei
- 21. Wie kann ich die Quelldatei einer ausstehenden Integration auflisten?
- 22. wie Quelldatei aus apk-Datei
- 23. qmake: konnte eine Qt-Installation von '' nicht finden - qmake einrichten?
- 24. Liste spezifisch mit einer einzigen Tabelle
- 25. Wie füge ich zwei Listen zu einer einzigen Liste zusammen?
- 26. Wie kompiliere nodejs zu einer einzigen, vollständig statischen Binärdatei
- 27. Lesen und Erweitern einer Racket-Quelldatei
- 28. Klassen mit einer einzigen Eigenschaft finden
- 29. Dev C++ zu kompilieren C-Quelldatei
- 30. Android Studio friert beim Ändern einer Quelldatei ein
Ihre letzte Zeile ist eine Einladung für Downvotes und Close Votes. Ich schlage vor, dass Sie das entfernen. Kannst du auch erklären, warum du eine Datei anders als den Rest erstellen willst? Was versuchst du zu erreichen? – lpapp
@lpapp danke für deine Beratung. Ich habe meine Frage erneut bearbeitet. – cetron