Qt wiki will be updated on October 12th 2023 starting at 11:30 AM (EEST) and the maintenance will last around 2-3 hours. During the maintenance the site will be unavailable.
Including .pro Files/bg: Difference between revisions
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
'''Български''' [[IncludingProFiles|English]] [[IncludingProFiles Malay|Malay]] [[IncludingProFiles Spanish|Spanish]] [[IncludingProFiles_German|German]] [[IncludingProFiles_French|French]] | '''Български''' [[IncludingProFiles|English]] [[IncludingProFiles Malay|Malay]] [[IncludingProFiles Spanish|Spanish]] [[IncludingProFiles_German|German]] [[IncludingProFiles_French|French]] | ||
[[Category:Tools]] | |||
[[Category:HowTo]] | |||
= Включване на .pro файлове в .pro файлове = | = Включване на .pro файлове в .pro файлове = | ||
Line 9: | Line 11: | ||
В .pro файлa, имате две важни променливи: INCLUDEPATH и DEPENDPATH. Първата се използва от C+ + компилатора, когато обработва #includе декларациите, а втората се използва от qmake, когато се опитва да определи какво да се компилира и в какъв ред. | В .pro файлa, имате две важни променливи: INCLUDEPATH и DEPENDPATH. Първата се използва от C+ + компилатора, когато обработва #includе декларациите, а втората се използва от qmake, когато се опитва да определи какво да се компилира и в какъв ред. | ||
За да създадете гъвкаво дърво на проекта, което да може да се пренася лесно, трябва да обновявате pri-файловете по подходящ начин. Аз използвам текущата директория. Тя може да бъде взета с командата $$system | За да създадете гъвкаво дърво на проекта, което да може да се пренася лесно, трябва да обновявате pri-файловете по подходящ начин. Аз използвам текущата директория. Тя може да бъде взета с командата $$system(pwd) (работи са на Unix/Linux за съжаление). | ||
В | В "ръководството за променливи на qmake":http://doc.qt.nokia.com/4.7/qmake-variable-reference.html има променливи, които могат да ви помогнат да постигнете това и по друг начин (тествано на Windows ). Някой от тях са: | ||
* "'''PWD'''":http://doc.qt.nokia.com/4.7/qmake-variable-reference.html#pwd | |||
'''''' Тази променлива съдържа пълният път до директорията, в която се намира проектният файл на qmake. | |||
* "'''OUT_PWD'''":http://doc.qt.nokia.com/4.7/qmake-variable-reference.html#out-pwd | |||
'''''' Тази променлива съдържа пълният път до директорията, в която qmake поставя генерираните Makefile-ове. | |||
* Използването на префикса $$ е обяснено "тук":http://doc.qt.nokia.com/latest/qmake-advanced-usage.html#variables . | |||
Когато имате готова настройка за пътища и зависимости, остава просто да ги добавите към SOURCES, HEADERS, RESOURCES и FORMS секциите. | Когато имате готова настройка за пътища и зависимости, остава просто да ги добавите към SOURCES, HEADERS, RESOURCES и FORMS секциите. | ||
Line 17: | Line 24: | ||
За да обобщим, ето малък пример: | За да обобщим, ето малък пример: | ||
<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> | |||
Накрая в .pro файла просто добавете .pri чрез ''include'': | Накрая в .pro файла просто добавете .pri чрез ''include'': | ||
<code>… | <code>… | ||
include(support/foo/foo.pri) | |||
… | |||
</code> | |||
== Уговорки == | == Уговорки == |
Revision as of 13:21, 25 February 2015
Български English Malay Spanish German French
Включване на .pro файлове в .pro файлове
Понякога проектните файлове на QMake трябва да бъдат включвани един в друг. QMake е страхотен инструмент, но има някои тънки моменти, за които трябва да внимавате.
Първо, конвенцията, .pro файловете, предназначени за включване в други файлове, обикновено имат разширение .pri. Това се прави само за нагледност и не е задължително. Това също така означава, че qmake ги използва директно, а търси подходящия .pro файл.
В .pro файлa, имате две важни променливи: INCLUDEPATH и DEPENDPATH. Първата се използва от C+ + компилатора, когато обработва #includе декларациите, а втората се използва от qmake, когато се опитва да определи какво да се компилира и в какъв ред.
За да създадете гъвкаво дърво на проекта, което да може да се пренася лесно, трябва да обновявате pri-файловете по подходящ начин. Аз използвам текущата директория. Тя може да бъде взета с командата $$system(pwd) (работи са на Unix/Linux за съжаление).
В "ръководството за променливи на qmake":http://doc.qt.nokia.com/4.7/qmake-variable-reference.html има променливи, които могат да ви помогнат да постигнете това и по друг начин (тествано на Windows ). Някой от тях са:
' Тази променлива съдържа пълният път до директорията, в която се намира проектният файл на qmake.
' Тази променлива съдържа пълният път до директорията, в която qmake поставя генерираните Makefile-ове.
- Използването на префикса $$ е обяснено "тук":http://doc.qt.nokia.com/latest/qmake-advanced-usage.html#variables .
Когато имате готова настройка за пътища и зависимости, остава просто да ги добавите към SOURCES, HEADERS, RESOURCES и FORMS секциите.
За да обобщим, ето малък пример:
INCLUDEPATH ''= $$system(pwd)/include
DEPENDSPATH''= $$system(pwd)
SOURCES ''= src/foo.cpp
HEADERS''= include/foo.h
FORMS ''= forms/foo.ui
RESOURCES''= foo.qrc
Накрая в .pro файла просто добавете .pri чрез include:
…
include(support/foo/foo.pri)
…