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.
Building Qt 5 from Git/bg: Difference between revisions
No edit summary |
m (EdwardWelbourne moved page Building Qt from Git/bg to Building Qt 5 from Git/bg over redirect: hmm ... no, someone already apparently sorted out the Qt 6 version of this.) |
||
(8 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
[[Category:HowTo]] | {{Cleanup | reason=Auto-imported from ExpressionEngine.}} | ||
[[Category:HowTo]] | |||
[[Category:Developing_with_Qt::Qt 5]] | |||
'''Български''' [[Building Qt 5 from Git|English]] [[Building Qt 5 from Git SimplifiedChinese|简体中文]] | '''Български''' [[Building Qt 5 from Git|English]] [[Building Qt 5 from Git SimplifiedChinese|简体中文]] | ||
= Инсталиране на Qt 5 от Git = | = Инсталиране на Qt 5 от Git = | ||
Line 15: | Line 17: | ||
Първо свалете последната версия на Qt5 гит хранилището: | Първо свалете последната версия на Qt5 гит хранилището: | ||
<code> | <code> | ||
git clone git://code.qt.io/qt/qt5.git qt5 | |||
cd qt5 | |||
</code> | |||
Следвайки README файла, ние инициализираме хранилището. Това сваля различните подмодули на Qt5: | Следвайки README файла, ние инициализираме хранилището. Това сваля различните подмодули на Qt5: | ||
<code> | <code> | ||
./init-repository | |||
./qtrepotools/bin/qt5_tool -p | |||
</code> | |||
Преди да продължим нататък, трябва да се уверим, че подмодулите са конфигурирани правилно: | Преди да продължим нататък, трябва да се уверим, че подмодулите са конфигурирани правилно: | ||
<code> | <code> | ||
git submodule foreach 'git fetch —all' | |||
git submodule foreach 'git checkout -b staging-master staging/master || echo Ignoring module $name' | |||
# Специални случаи за qtbase и qtwebkit | # Специални случаи за qtbase и qtwebkit | ||
cd qtbase | |||
git checkout master && git reset —hard origin/master | |||
cd ../qtwebkit | |||
git checkout -b qt-modularization-base origin/qt-modularization-base | |||
cd ../ | |||
</code> | |||
== Конфигуриране и компилиране == | == Конфигуриране и компилиране == | ||
Line 31: | Line 47: | ||
Настройте вашият път да сочи към Qt5 инструментите, а не към старите на Qt4, които може да съществуват на вашата система: | Настройте вашият път да сочи към Qt5 инструментите, а не към старите на Qt4, които може да съществуват на вашата система: | ||
<code> | <code> | ||
export PATH=$PWD/qtbase/bin:$PATH | |||
</code> | |||
Подготовка за компилиране. Най-добре е да изключите тестовете, примерите и демонстрациите за сега: | Подготовка за компилиране. Най-добре е да изключите тестовете, примерите и демонстрациите за сега: | ||
<code> | <code> | ||
./configure -nokia-developer -nomake examples -nomake demos -nomake tests -no-gtkstyle | |||
</code> | |||
Забележете, че също така спряхме поддържката на gtk-style. Това се прави, защото на някои системи ( или поне на SUSE и Gentoo) `pkg-config —cflags gtk+–2.0` връща пътища, които включват Qt4.x директории с хедър файлове. | Забележете, че също така спряхме поддържката на gtk-style. Това се прави, защото на някои системи ( или поне на SUSE и Gentoo) `pkg-config —cflags gtk+–2.0` връща пътища, които включват Qt4.x директории с хедър файлове. | ||
Line 43: | Line 63: | ||
Пуснете make както обикновено (нагласете опцията -j да съответства на броя адра на процесора, който имате): | Пуснете make както обикновено (нагласете опцията -j да съответства на броя адра на процесора, който имате): | ||
<code> | <code> | ||
make -j3 | |||
</code> | |||
Или можете да компилирате само отделен модул и модулите, от които той зависи. Примерно: | Или можете да компилирате само отделен модул и модулите, от които той зависи. Примерно: | ||
<code> | <code> | ||
make module-qtdeclarative | |||
</code> | |||
== Почистване == | == Почистване == | ||
Line 53: | Line 77: | ||
За да получите '''наистина''' чисто дърво използвайте: | За да получите '''наистина''' чисто дърво използвайте: | ||
<code> | <code> | ||
git submodule foreach 'git clean -dffx' | |||
</code> | |||
тъй като ''make confclean'' вече не работи от най-горното ниво на хранилището. | тъй като ''make confclean'' вече не работи от най-горното ниво на хранилището. | ||
Line 61: | Line 87: | ||
За да получите ъпдейти за подмодулите, просто изпълнете: | За да получите ъпдейти за подмодулите, просто изпълнете: | ||
<code> | <code> | ||
./qtrepotools/bin/qt5_tool -p | |||
</code> | |||
== Проблеми == | == Проблеми == |
Latest revision as of 12:13, 10 June 2021
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. |
Инсталиране на Qt 5 от Git
Въведение
Този статия ще се опита да ви даде някои насоки как да свалите модулното Qt5 от git и да го компилирате. Чувстрайте се свободни да променяте тази статия, ако нещо се промени по време на разработката. Тези инструкции са за Линукс, така че може да се наложи да ги донагласите за другите палтформи.
Сваляне на сорс кода
Първо свалете последната версия на Qt5 гит хранилището:
git clone git://code.qt.io/qt/qt5.git qt5
cd qt5
Следвайки README файла, ние инициализираме хранилището. Това сваля различните подмодули на Qt5:
./init-repository
./qtrepotools/bin/qt5_tool -p
Преди да продължим нататък, трябва да се уверим, че подмодулите са конфигурирани правилно:
git submodule foreach 'git fetch —all'
git submodule foreach 'git checkout -b staging-master staging/master || echo Ignoring module $name'
# Специални случаи за qtbase и qtwebkit
cd qtbase
git checkout master && git reset —hard origin/master
cd ../qtwebkit
git checkout -b qt-modularization-base origin/qt-modularization-base
cd ../
Конфигуриране и компилиране
Настройте вашият път да сочи към Qt5 инструментите, а не към старите на Qt4, които може да съществуват на вашата система:
export PATH=$PWD/qtbase/bin:$PATH
Подготовка за компилиране. Най-добре е да изключите тестовете, примерите и демонстрациите за сега:
./configure -nokia-developer -nomake examples -nomake demos -nomake tests -no-gtkstyle
Забележете, че също така спряхме поддържката на gtk-style. Това се прави, защото на някои системи ( или поне на SUSE и Gentoo) `pkg-config —cflags gtk+–2.0` връща пътища, които включват Qt4.x директории с хедър файлове.
Аргументът -nokia-developer спира проверката за лицензи и добавя опцията -developer-build, която експортира повече символи от традиционната Qt компилация, с цел повече класове и функции да могат да се тестват.
Пуснете make както обикновено (нагласете опцията -j да съответства на броя адра на процесора, който имате):
make -j3
Или можете да компилирате само отделен модул и модулите, от които той зависи. Примерно:
make module-qtdeclarative
Почистване
За да получите наистина чисто дърво използвайте:
git submodule foreach 'git clean -dffx'
тъй като make confclean вече не работи от най-горното ниво на хранилището.
Получаване на ъпдейти
За да получите ъпдейти за подмодулите, просто изпълнете:
./qtrepotools/bin/qt5_tool -p