Frage

Was ist der Unterschied zwischen *.pro und *.pri Konfigurationsdateien für QMake?

Was sollte in eine *.Pro -Datei gehen und was sollte in eine *.Pri -Datei eingehen?

War es hilfreich?

Lösung

EIN .pro Datei ist das, worauf Sie QMake ausführen würden. EIN .pri Datei ist von a enthalten .pro Datei. Abgesehen davon gibt es keinen großen Unterschied zwischen den beiden.

Die Beispielnutzung könnte sein, wenn Sie unterschiedliche Builds haben, die unterschiedliche Optionen benötigen. Sie können gemeinsam genutzte Informationen in das .Pro einfügen und die Optionen in verschiedene .Pri -Dateien verschieben. Ein bisschen mehr Informationen, obwohl zugegebenermaßen nicht viel mehr, kann hier gefunden werden.

Andere Tipps

Es gibt einen Hauptunterschied zwischen ihrer gezielten Wiederverwendung:

.Profi

Dies wird normalerweise genannt Projektdatei.

.Pri

Dies wird normalerweise genannt Projekt Enthalten Datei.

Wie Sie in ihren Namen sehen können, ist der Hauptunterschied das .pri Dateien sollen Dateien enthalten. Dies ähnelt dem Einbeziehen von Modulen in die Programmiersprache, um die Funktionalität im Wesentlichen zu teilen.

Sie können die gemeinsamen Einstellungen und Code in diese schreiben .pri Dateien und schließen sie von mehreren ein .pro Dateien, wie es erforderlich ist. So würden Sie es in der Praxis verwenden:

foo.pri

FOO = BAR

Hallo.pro

...
include($$PWD/foo.pri)
...

World.Pro

...
include($$PWD/foo.pri)
...

Auf diese Weise wäre die Gemeinsamkeit beide in verfügbar hello.pro ebenso gut wie world.pro. Es macht in diesem Szenario keinen großen Unterschied, aber wenn die gemeinsame Funktionalität länger wird, speichert sie Ihnen einige Schreiben sowie Synchronisierung, Fehler und so weiter.

Sie könnten sogar a einschließen .pri Datei in einem anderen .pri Datei, wenn Sie möchten. Sie können auch einschließen .pri Dateien in verschiedenen Unterprojekten usw. Es ist sehr schön.

Die Syntax ist jedoch für beide gleich .pro und .pri Dateien. Am Ende würden Sie QMake auf dem ausführen .pro Dateien, und das ist auch das, was QMake für Sie generiert, wenn Sie keine Projektdatei vorhanden haben und Sie verwenden möchten qmake -project.

Sie können mehr über die Funktion bei der Einfügungsfunktion lesen hier drin:

einschließen (Dateiname)

Enthält den Inhalt der vom Dateinamen angegebenen Datei in das aktuelle Projekt an dem Punkt, an dem sie enthalten ist. Diese Funktion ist erfolgreich, wenn der Dateiname enthalten ist. Ansonsten scheitert es. Die mitgelieferte Datei wird sofort verarbeitet.

Sie können prüfen, ob die Datei mit dieser Funktion als Bedingung für einen Umfang verwendet wurde.

Nur um vollständig zu sein, gibt es auch .prf Projekt Feature Dateien und .prl Projekt Linker Dateien, Aber als Endbenutzer müssen Sie sich vorerst nicht damit befassen.

Das Format der .pri Dateien sind genau das gleiche wie das Format der .pro Dateien. Der Hauptunterschied ist die Absicht; A .Pro ist das, was die meisten Menschen erwarten würden, QMake direkt zu betreiben, während ein. PRI von einem .Pro aufgenommen werden soll. Wenn Sie QMake anweisen, eine andere Datei einzuschließen, verarbeitet es nur die Befehle in dieser Datei, als ob sie in der aktuellen Datei wäre.

Als Referenz: *.pro vs *.pri

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