Including .pro Files/fr: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
 
No edit summary
Line 1: Line 1:
[[IncludingProFiles|Anglais]] [[IncludingProFiles-Malay|Malay]] [[IncludingProFiles-Spanish|Espagnol]] [[IncludingProFiles German|Allemand]] '''Français'''
[[IncludingProFiles|Anglais]] [[IncludingProFiles Malay|Malay]] [[IncludingProFiles Spanish|Espagnol]] [[IncludingProFiles_German|Allemand]] '''Français'''<br />[[Category:Tools]]<br />[[Category:French]]<br />[[Category:HowTo]]


=Inclure des fichiers .pro dans d’autres=
= 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.
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.
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: <span class="caps">INCLUDEPATH</span> (chemin d’inclusion) et <span class="caps">DEPENDPATH</span> (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(pwd) (uniquement sur les linux / *nix, désolé <span class="smiley">;-)</span> )
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&amp;amp;#40;pwd&amp;amp;#41; (uniquement sur les linux / '''nix, désolé ;-) )
<br />Dans la &quot;documentation sur les variables de qmake (lien en anglais)&quot;:http://doc.qt.nokia.com/4.7/qmake-variable-reference.html , on trouve des variables qui peuvent vous aider à identifier le répertoire courant (testé sur windows). Parmi elles, on peut citer:<br />''' &quot;'''PWD''' (lien en anglais)&quot;:http://doc.qt.nokia.com/4.7/qmake-variable-reference.html#pwd<br />'''''' Cette variable contient le chemin complet vers l'endroît où le fichier de qmake &amp;#40;project.pro&amp;amp;#41; se situe.<br />* &quot;'''OUT_PWD''' (lien en anglais)&quot;:http://doc.qt.nokia.com/4.7/qmake-variable-reference.html#out-pwd<br />'''''' Cette variable contient le chemin complet vers l'endroît où qmake va générer le fichier Makefile.<br />* L'utilisation du préfixe $$ est expliqué en détail &quot;ici (lien en anglais)&quot;:http://doc.qt.nokia.com/latest/qmake-advanced-usage.html#variables .


Dans la [http://doc.qt.nokia.com/4.7/qmake-variable-reference.html documentation sur les variables de qmake] ''[doc.qt.nokia.com]'' , on trouve des variables qui peuvent vous aider à identifier le répertoire courant (testé sur windows). Parmi elles, on peut citer:
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.
 
* [http://doc.qt.nokia.com/4.7/qmake-variable-reference.html#pwd '''<span class="caps">PWD</span>'''] ''[doc.qt.nokia.com]''
** 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 '''<span class="caps">OUT</span>_PWD'''] ''[doc.qt.nokia.com]''
** 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] ''[doc.qt.nokia.com]'' .
 
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 <span class="caps">SOURCES</span>, <span class="caps">HEADERS</span>, <span class="caps">RESOURCES</span> et <span class="caps">FORMS</span>.


Pour résumer, rien ne vaut un exemple:
Pour résumer, rien ne vaut un exemple:


Et simplement, dans le fichier .pro, on ajouter le fichier.pri en appelant include<br />
<code>INCLUDEPATH ''= $$system&amp;amp;#40;pwd&amp;amp;#41;/include<br />DEPENDSPATH''= $$system&amp;amp;#40;pwd&amp;amp;#41;
 
==Dangers==


Cette façon de faire semble un peut trop alambiquée pour les outils de traduction. Si vous voulez pouvoir utiliser lupdate et lrelease, vous devez vous baser sur des fichiers .pri et .pro moins dynamiques ou simplement trouver un moyen de générer des fichiers .pro spécifiques dédiés aux traductions.
SOURCES ''= src/foo.cpp<br />HEADERS''= include/foo.h<br />FORMS ''= forms/foo.ui<br />RESOURCES''= foo.qrc<br /></code>


===Categories:===
Et simplement, dans le fichier .pro, on ajouter le fichier.pri en appelant include<br /><code>…<br />include(support/foo/foo.pri)<br />…<br /></code>


* [[:Category:French|French]]
== Dangers ==
* [[:Category:HowTo|HowTo]]
* [[:Category:Tools|Tools]]

Revision as of 10:00, 24 February 2015

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&amp;#40;pwd&amp;#41; (uniquement sur les linux / nix, désolé ;-) )
Dans la "documentation sur les variables de qmake (lien en anglais)":http://doc.qt.nokia.com/4.7/qmake-variable-reference.html , 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)":http://doc.qt.nokia.com/4.7/qmake-variable-reference.html#pwd
'
Cette variable contient le chemin complet vers l'endroît où le fichier de qmake &#40;project.pro&amp;#41; se situe.
* "OUT_PWD (lien en anglais)":http://doc.qt.nokia.com/4.7/qmake-variable-reference.html#out-pwd
'
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)":http://doc.qt.nokia.com/latest/qmake-advanced-usage.html#variables .

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&amp;amp;#40;pwd&amp;amp;#41;/include<br />DEPENDSPATH''= $$system&amp;amp;#40;pwd&amp;amp;#41;

SOURCES ''= src/foo.cpp<br />HEADERS''= include/foo.h<br />FORMS ''= forms/foo.ui<br />RESOURCES''= foo.qrc<br />

Et simplement, dans le fichier .pro, on ajouter le fichier.pri en appelant include

<br />include(support/foo/foo.pri)<br /><br />

Dangers