Including .pro Files/fr: Difference between revisions
No edit summary |
AutoSpider (talk | contribs) m (AutoSpider moved page IncludingProFiles French to Including .pro Files/fr: Localisation) |
||
(3 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
[[IncludingProFiles|Anglais]] [[IncludingProFiles Malay|Malay]] [[IncludingProFiles Spanish|Espagnol]] [[IncludingProFiles_German|Allemand]] '''Français''' | {{Cleanup | reason=Auto-imported from ExpressionEngine.}} | ||
[[IncludingProFiles|Anglais]] [[IncludingProFiles Malay|Malay]] [[IncludingProFiles Spanish|Espagnol]] [[IncludingProFiles_German|Allemand]] '''Français''' | |||
[[Category:Tools]] | |||
[[Category:French]] | |||
[[Category:HowTo]] | |||
= Inclure des fichiers .pro dans d'autres = | = Inclure des fichiers .pro dans d'autres = | ||
Line 9: | Line 14: | ||
Dans un fichier .pro, on trouve essentiellement deux variables: INCLUDEPATH (chemin d'inclusion) et DEPENDPATH (arborescence de dépendance). Le premier est utilisé par le compilateur C++ quand il essaie de résoudre les inclusions (#include), tandis que le second est utilisé par qmake pour déterminer dans quel ordre il doit construire. | Dans un fichier .pro, on trouve essentiellement deux variables: INCLUDEPATH (chemin d'inclusion) et DEPENDPATH (arborescence de dépendance). Le premier est utilisé par le compilateur C++ quand il essaie de résoudre les inclusions (#include), tandis que le second est utilisé par qmake pour déterminer dans quel ordre il doit construire. | ||
Pour avoir une arborescence de fichiers que l'on peut réellement déplacer, les fichiers .pri doivent mettre à jour ces variables de façon adaptée. Mon astuce pour le faire consiste à se baser sur le répertoire courant. On peut le trouver en lançant la commande $$system | Pour avoir une arborescence de fichiers que l'on peut réellement déplacer, les fichiers .pri doivent mettre à jour ces variables de façon adaptée. Mon astuce pour le faire consiste à se baser sur le répertoire courant. On peut le trouver en lançant la commande $$system(pwd) (uniquement sur les linux / '''nix, désolé ;-) ) | ||
Dans la [http://doc.qt.nokia.com/4.7/qmake-variable-reference.html documentation sur les variables de qmake (lien en anglais)] , on trouve des variables qui peuvent vous aider à identifier le répertoire courant (testé sur windows). Parmi elles, on peut citer: | |||
''' [http://doc.qt.nokia.com/4.7/qmake-variable-reference.html#pwd '''PWD''' (lien en anglais)] | |||
'''''' Cette variable contient le chemin complet vers l'endroît où le fichier de qmake (project.pro) se situe. | |||
* [http://doc.qt.nokia.com/4.7/qmake-variable-reference.html#out-pwd '''OUT_PWD''' (lien en anglais)] | |||
'''''' Cette variable contient le chemin complet vers l'endroît où qmake va générer le fichier Makefile. | |||
* L'utilisation du préfixe $$ est expliqué en détail [http://doc.qt.nokia.com/latest/qmake-advanced-usage.html#variables ici (lien en anglais)] . | |||
Une fois que les chemins d'inclusion et de dépendance sont correctement configurés, il suffit d'ajouter les bons fichiers dans les variables SOURCES, HEADERS, RESOURCES et FORMS. | Une fois que les chemins d'inclusion et de dépendance sont correctement configurés, il suffit d'ajouter les bons fichiers dans les variables SOURCES, HEADERS, RESOURCES et FORMS. | ||
Line 16: | Line 27: | ||
Pour résumer, rien ne vaut un exemple: | Pour résumer, rien ne vaut un exemple: | ||
<code>INCLUDEPATH ''= $$system | <code>INCLUDEPATH ''= $$system(pwd)/include | ||
DEPENDSPATH''= $$system(pwd) | |||
SOURCES ''= src/foo.cpp | SOURCES ''= src/foo.cpp | ||
HEADERS''= include/foo.h | |||
FORMS ''= forms/foo.ui | |||
RESOURCES''= foo.qrc | |||
</code> | |||
Et simplement, dans le fichier .pro, on ajouter le fichier.pri en appelant include | Et simplement, dans le fichier .pro, on ajouter le fichier.pri en appelant include | ||
<code>… | |||
include(support/foo/foo.pri) | |||
… | |||
</code> | |||
== Dangers == | == Dangers == |
Latest revision as of 15:36, 29 March 2015
This article may require cleanup to meet the Qt Wiki's quality standards. Reason: Auto-imported from ExpressionEngine. Please improve this article if you can. Remove the {{cleanup}} tag and add this page to Updated pages list after it's clean. |
Anglais Malay Espagnol Allemand Français
Inclure des fichiers .pro dans d'autres
Les fichiers de projet QMake ont parfois besoin d'être capable d'en inclure d'autres. Qmake est un très bon outil, mais il faut connaître quelques astuces pour en tirer le meilleur parti.
Tout d'abord, par convention, les fichiers .pro que l'on prévoit d'inclure dans d'autres doivent être nommés .pri, simplement pour rappeler qu'ils sont destinés à être inclus. Cela aide également à ce que qmake ne les utilise pas directement, mais utilise les fichiers .pro appropriés en lieu et place.
Dans un fichier .pro, on trouve essentiellement deux variables: INCLUDEPATH (chemin d'inclusion) et DEPENDPATH (arborescence de dépendance). Le premier est utilisé par le compilateur C++ quand il essaie de résoudre les inclusions (#include), tandis que le second est utilisé par qmake pour déterminer dans quel ordre il doit construire.
Pour avoir une arborescence de fichiers que l'on peut réellement déplacer, les fichiers .pri doivent mettre à jour ces variables de façon adaptée. Mon astuce pour le faire consiste à se baser sur le répertoire courant. On peut le trouver en lançant la commande $$system(pwd) (uniquement sur les linux / nix, désolé ;-) )
Dans la documentation sur les variables de qmake (lien en anglais) , on trouve des variables qui peuvent vous aider à identifier le répertoire courant (testé sur windows). Parmi elles, on peut citer: PWD (lien en anglais) ' Cette variable contient le chemin complet vers l'endroît où le fichier de qmake (project.pro) se situe.
' Cette variable contient le chemin complet vers l'endroît où qmake va générer le fichier Makefile.
- L'utilisation du préfixe $$ est expliqué en détail ici (lien en anglais) .
Une fois que les chemins d'inclusion et de dépendance sont correctement configurés, il suffit d'ajouter les bons fichiers dans les variables SOURCES, HEADERS, RESOURCES et FORMS.
Pour résumer, rien ne vaut un exemple:
INCLUDEPATH ''= $$system(pwd)/include
DEPENDSPATH''= $$system(pwd)
SOURCES ''= src/foo.cpp
HEADERS''= include/foo.h
FORMS ''= forms/foo.ui
RESOURCES''= foo.qrc
Et simplement, dans le fichier .pro, on ajouter le fichier.pri en appelant include
…
include(support/foo/foo.pri)
…