Building Qt for Linux/ru: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
[[Category:Developing with Qt::General]]<br />[[Category:HowTo]]<br />[[Category:Instructions]]
[[Category:Developing with Qt::General]]
[[Category:HowTo]]
[[Category:Instructions]]


Эта страница на: '''Русском''' [[Build_Qt_For_Linux|English]] [[Build_Qt_For_Linux_Portuguese|Português]] [[Build_Qt_For_Linux_Spanish|Spanish]]
Эта страница на: '''Русском''' [[Build_Qt_For_Linux|English]] [[Build_Qt_For_Linux_Portuguese|Português]] [[Build_Qt_For_Linux_Spanish|Spanish]]
Line 5: Line 7:
= Сборка Qt в Linux =
= Сборка Qt в Linux =


Qt очень большой фреймворк, он включает множество модулей, конфигурационных параметров и дополнительный возможностей.<br />Это может быть проблемой, когда вы собираете его из исходного кода. Как найти и установить все требуемые зависимости? Как включить неизведанные возможности в билд?
Qt очень большой фреймворк, он включает множество модулей, конфигурационных параметров и дополнительный возможностей.
Это может быть проблемой, когда вы собираете его из исходного кода. Как найти и установить все требуемые зависимости? Как включить неизведанные возможности в билд?


Ниже приводиться полный список пакетов зависмостей для все версий Qt между 4.5 и мастер-веткой по состоянию на декабрь 2010. В настоящий момент имена пакетов описаны только для Ubuntu, но для большинства дистрибутивов они будут совпадать.
Ниже приводиться полный список пакетов зависмостей для все версий Qt между 4.5 и мастер-веткой по состоянию на декабрь 2010. В настоящий момент имена пакетов описаны только для Ubuntu, но для большинства дистрибутивов они будут совпадать.


Колонка &quot;Модуль&amp;quot; отображает самый низкоуровневый модуль, который использует данную функцию (то есть, если QtCore использует эту функцию, то QtGui не будет перечислен). Нескольно модулей указываются только если они не являются взаимозависимыми.
Колонка "Модуль" отображает самый низкоуровневый модуль, который использует данную функцию (то есть, если QtCore использует эту функцию, то QtGui не будет перечислен). Нескольно модулей указываются только если они не являются взаимозависимыми.


{|
{|
Line 119: Line 122:
|&amp;#8209;egl, &amp;#8209;opengl&amp;amp;nbsp;es[1&amp;amp;#124;1cl&amp;amp;#124;2]
|&amp;#8209;egl, &amp;#8209;opengl&amp;amp;nbsp;es[1&amp;amp;#124;1cl&amp;amp;#124;2]
|X
|X
|X<ref>Необходимо добавить &amp;#8209;DMESA_EGL_NO_X11_HEADERS в &quot;configure&amp;quot; для сборки Qt/Embedded. Возможно это можно сделать с помощью .qmake.cache?
|X<ref>Необходимо добавить &amp;#8209;DMESA_EGL_NO_X11_HEADERS в "configure" для сборки Qt/Embedded. Возможно это можно сделать с помощью .qmake.cache?
</ref>
</ref>
|X
|X
Line 156: Line 159:
|X
|X
|-
|-
|GStreamer<ref>Необходимо добавить &quot;$(pkg&amp;amp;#8209;config gstreamer&amp;amp;#8209;interfaces&amp;amp;#8209;0.10 gstreamer&amp;amp;#8209;video&amp;amp;#8209;0.10 gstreamer&amp;amp;#8209;base&amp;amp;#8209;0.10 &amp;#8209;&amp;#8209;cflags&amp;amp;#8209;only&amp;amp;#8209;I)&quot; в &quot;configure&amp;quot;.
|GStreamer<ref>Необходимо добавить "$(pkg&amp;amp;#8209;config gstreamer&amp;amp;#8209;interfaces&amp;amp;#8209;0.10 gstreamer&amp;amp;#8209;video&amp;amp;#8209;0.10 gstreamer&amp;amp;#8209;base&amp;amp;#8209;0.10 &amp;#8209;&amp;#8209;cflags&amp;amp;#8209;only&amp;amp;#8209;I)" в "configure".
</ref>
</ref>
|Phonon
|Phonon

Revision as of 10:17, 25 February 2015


Эта страница на: Русском English Português Spanish

Сборка Qt в Linux

Qt очень большой фреймворк, он включает множество модулей, конфигурационных параметров и дополнительный возможностей. Это может быть проблемой, когда вы собираете его из исходного кода. Как найти и установить все требуемые зависимости? Как включить неизведанные возможности в билд?

Ниже приводиться полный список пакетов зависмостей для все версий Qt между 4.5 и мастер-веткой по состоянию на декабрь 2010. В настоящий момент имена пакетов описаны только для Ubuntu, но для большинства дистрибутивов они будут совпадать.

Колонка "Модуль" отображает самый низкоуровневый модуль, который использует данную функцию (то есть, если QtCore использует эту функцию, то QtGui не будет перечислен). Нескольно модулей указываются только если они не являются взаимозависимыми.

Зависимость Модуль Параметр Qt/X11? Qt/Embedded? Qt 4.5 Qt 4.6 Qt 4.7 Qt 4.8 (trunk)
ZLib QtCore &#8209;[qt&amp;#124;system]&#8209;zlib X X X X X X
JPEG QtCore &#8209;[qt&amp;#124;system]&#8209;libjpeg X X X X X X
TIFF QtCore &#8209;[qt&amp;#124;system]&#8209;libtiff X X X X X X
MNG QtCore &#8209;[qt&amp;#124;system]&#8209;libmng X X X X X X
PNG QtCore &#8209;[qt&amp;#124;system]&#8209;libpng X X X X X X
OpenGL QtOpenGL &#8209;opengl X X X X X
OpenGL ES 1 QtOpenGL &#8209;opengl&amp;nbsp;es1 X X X[1] X X X
OpenGL ES 1 CL QtOpenGL &#8209;opengl&amp;nbsp;es1cl X X X[2] X X X
OpenGL ES 2 QtOpenGL &#8209;opengl&amp;nbsp;es2 X X X[3] X X X
EGL QtOpenGL &#8209;egl, &#8209;opengl&amp;nbsp;es[1&amp;#124;1cl&amp;#124;2] X X[4] X X X X
OpenVG QtOpenVG &#8209;openvg X X X X X
ShivaVG QtOpenVG &#8209;openvg X X X X X
DirectFB QtGui &#8209;[qt&amp;#124;plugin]&#8209;gfx&amp;#8209;directfb X X X X X
GStreamer[5] Phonon &#8209;phonon X X X X X X
PulseAudio Phonon &#8209;phonon&amp;#8209;backend X X X X X
ALSA QtMultimedia &#8209;multimedia X X X X X
NAS Sound QtGui &#8209;system&amp;#8209;nas&amp;#8209;sound X X X X X
FreeType QtGui &#8209;freetype X X X X X X
FontConfig QtGui &#8209;fontconfig X X X X X
tslib QtGui &#8209;[qt&amp;#124;plugin]&#8209;mouse&amp;#8209;tslib X X X X X
Cups QtGui &#8209;cups X X X X X X
D&amp;#8209;Bus QtDBus &#8209;dbus[&#8209;linked] X X X X X X
ICD QtNetwork &#8209;icd X X X X
GLib QtCore &#8209;glib X X X X X X
GTK QtGui &#8209;gtkstyle X X X X X
X11 QtGui none X X X X X
XShape QtGui &#8209;xshape X X X X X
XCursor QtGui &#8209;xcursor X X X X X
XFixes QtGui &#8209;xfixes X X X X X
XRandr QtGui &#8209;xrandr X X X X X
XRender QtGui, QtWebKit &#8209;xrender X X X X X
XVideo Phonon, QtMultimedia &#8209;xvideo X X X X X
Xinerama QtGui &#8209;xinerama X X X X X
XInput QtGui &#8209;xinput X X X X X
Session management QtGui &#8209;sm X X X X X
OpenSSL QtNetwork, QtWebKit &#8209;openssl[&#8209;linked] X X X X X X
Interbase QtSql &#8209;[qt&amp;#124;plugin]&#8209;sql&amp;#8209;ibase X X X X X X
MySQL QtSql &#8209;[qt&amp;#124;plugin]&#8209;sql&amp;#8209;mysql X X X X X X
ODBC[6] QtSql &#8209;[qt&amp;#124;plugin]&#8209;sql&amp;#8209;odbc X X X X X X
PostgreSQL QtSql &#8209;[qt&amp;#124;plugin]&#8209;sql&amp;#8209;psql X X X X X X
SQLite 2 QtSql &#8209;[qt&amp;#124;plugin]&#8209;sql&amp;#8209;sqlite2 X X X X X X
SQLite 3 QtSql &#8209;[qt&amp;#124;plugin]&#8209;sql&amp;#8209;sqlite X X X X X X
TDS QtSql &#8209;[qt&amp;#124;plugin]&#8209;sql&amp;#8209;tds X X X X X X
Зависимость Ubuntu Lucid Ubuntu Maverick
ZLib zlib1g&amp;#8209;dev zlib1g&amp;#8209;dev
JPEG libjpeg62&amp;#8209;dev libjpeg62&amp;#8209;dev
TIFF libtiff4&amp;#8209;dev libtiff4&amp;#8209;dev
MNG libmng&amp;#8209;dev libmng&amp;#8209;dev
PNG libpng12&amp;#8209;dev libpng12&amp;#8209;dev
OpenGL mesa&amp;#8209;common&amp;#8209;dev, libglu1&amp;#8209;mesa&amp;#8209;dev mesa&amp;#8209;common&amp;#8209;dev, libglu1&amp;#8209;mesa&amp;#8209;dev
OpenGL ES 1 none libgles1&amp;#8209;mesa&amp;#8209;dev[7]
OpenGL ES 1 CL none libgles1&amp;#8209;mesa&amp;#8209;dev
OpenGL ES 2 none libgles2&amp;#8209;mesa&amp;#8209;dev
EGL none libgles2&amp;#8209;mesa&amp;#8209;dev or libegl1&amp;#8209;mesa&amp;#8209;dev
OpenVG none libopenvg1&amp;#8209;mesa&amp;#8209;dev
ShivaVG none none
DirectFB libdirectfb&amp;#8209;dev libdirectfb&amp;#8209;dev
GStreamer libgstreamer0.10&amp;#8209;dev, libgstreamer&amp;#8209;plugins&amp;#8209;base0.10&amp;#8209;dev libgstreamer0.10&amp;#8209;dev, libgstreamer&amp;#8209;plugins&amp;#8209;base0.10&amp;#8209;dev
PulseAudio libpulse&amp;#8209;dev libpulse&amp;#8209;dev
NAS Sound libaudio&amp;#8209;dev libaudio&amp;#8209;dev
ALSA libasound2&amp;#8209;dev libasound2&amp;#8209;dev
FreeType libfreetype6&amp;#8209;dev libfreetype6&amp;#8209;dev
FontConfig libfontconfig1&amp;#8209;dev libfontconfig1&amp;#8209;dev
tslib libts&amp;#8209;dev libts&amp;#8209;dev
Cups libcups2&amp;#8209;dev libcups2&amp;#8209;dev
D&amp;#8209;Bus libdbus&amp;#8209;1&amp;#8209;dev libdbus&amp;#8209;1&amp;#8209;dev
ICD none none
GLib libglib2.0&amp;#8209;dev libglib2.0&amp;#8209;dev
GTK libgtk2.0&amp;#8209;dev libgtk2.0&amp;#8209;dev
X11 libx11&amp;#8209;dev, libxext&amp;#8209;dev libx11&amp;#8209;dev, libxext&amp;#8209;dev
XCursor libxcursor&amp;#8209;dev libxcursor&amp;#8209;dev
XFixes libxfixes&amp;#8209;dev libxfixes&amp;#8209;dev
XRandr libxrandr&amp;#8209;dev libxrandr&amp;#8209;dev
XRender libxrender&amp;#8209;dev libxrender&amp;#8209;dev
XVideo libxv&amp;#8209;dev libxv&amp;#8209;dev
Xinerama libxinerama&amp;#8209;dev libxinerama&amp;#8209;dev
XInput libxi&amp;#8209;dev libxi&amp;#8209;dev
Session management libsm&amp;#8209;dev libsm&amp;#8209;dev
OpenSSL libssl&amp;#8209;dev libssl&amp;#8209;dev
Interbase firebird2.1&amp;#8209;dev firebird2.5&amp;#8209;dev or firebird2.1&amp;#8209;dev
MySQL libmysqlclient&amp;#8209;dev libmysqlclient&amp;#8209;dev
ODBC unixodbc&amp;#8209;dev or libiodbc2&amp;#8209;dev[8] unixodbc&amp;#8209;dev or libiodbc2&amp;#8209;dev[9]
PostgreSQL libpq&amp;#8209;dev libpq&amp;#8209;dev
SQLite 2 libsqlite0&amp;#8209;dev libsqlite0&amp;#8209;dev
SQLite 3 libsqlite3&amp;#8209;dev libsqlite3&amp;#8209;dev
TDS freetds&amp;#8209;dev[6] freetds&amp;#8209;dev[6]
  1. Несмотря на то что это поддерживается, я не смог собрать с этой опцией в Qt 4.5.
  2. Несмотря на то что это поддерживается, я не смог собрать с этой опцией в Qt 4.5.
  3. Несмотря на то что это поддерживается, я не смог собрать с этой опцией в Qt 4.5.
  4. Необходимо добавить &#8209;DMESA_EGL_NO_X11_HEADERS в "configure" для сборки Qt/Embedded. Возможно это можно сделать с помощью .qmake.cache?
  5. Необходимо добавить "$(pkg&amp;#8209;config gstreamer&amp;#8209;interfaces&amp;#8209;0.10 gstreamer&amp;#8209;video&amp;#8209;0.10 gstreamer&amp;#8209;base&amp;#8209;0.10 &#8209;&#8209;cflags&amp;#8209;only&amp;#8209;I)" в "configure".
  6. Это также требует libGLES_CM.so.
  7. Это также требует libGLES_CM.so.
  8. Использование libiodbc2 вместо unixodbc поддерживается начиная с Qt 4.6.
  9. Использование libiodbc2 вместо unixodbc поддерживается начиная с Qt 4.6.