Не собирается Qt c поддержкой OpenGL ES
muaddib |
|
|
|
|
|
|
|
Пункты: 1232 |
Регистрация: 20.11.2014 |
|
|
|
Вопрос такой, кто-нибудь собирал Qt c поддержкой opengl es.
У меня по этому поводу buildroot выдает следующее:
This is the Qt for Embedded Linux Open Source Edition.
You are licensed to use this software under the terms of
the Lesser GNU General Public License (LGPL) versions 2.1.
You are also licensed to use this software under the terms of
the GNU General Public License (GPL) versions 3.
You have already accepted the terms of the license.
Creating qmake. Please wait...
gmake[1]: Вход в каталог `/home/muaddib/hola/buildroot-2015.02-sk-gl/output/build/qt-4.8.6/qmake'
gmake[1]: Цель `first' не требует выполнения команд.
gmake[1]: Выход из каталога `/home/muaddib/hola/buildroot-2015.02-sk-gl/output/build/qt-4.8.6/qmake'
You have asked to use pkg-config and are cross-compiling.
Please make sure you have a correctly set-up pkg-config
environment!
The EGL functionality test failed!
EGL is required for OpenGL ES to manage contexts & surfaces.
You might need to modify the include and library search paths by editing
QMAKE_INCDIR_EGL, QMAKE_LIBDIR_EGL and QMAKE_LIBS_EGL in
/home/muaddib/hola/buildroot-2015.02-sk-gl/output/build/qt-4.8.6/mkspecs/qws/linux-arm-g++.
make: *** [/home/muaddib/hola/buildroot-2015.02-sk-gl/output/build/qt-4.8.6/.stamp_configured] Ошибка 1
По всей видимости он не может найти EGL.so и egl.h.
Библиотеки эти в output/host присутствуют.
Пробовал прописывать их через переменные export, а также в файле в каталоге Qt /mkspecs/common/linux.conf ошибка остается все та же.
QMAKE_INCDIR_OPENGL_ES1 = /home/muaddib/hola/buildroot-2015.02-sk-gl/output/host/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/include/GLES
QMAKE_LIBDIR_OPENGL_ES1 = /home/muaddib/hola/buildroot-2015.02-sk-gl/output/host/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/lib
QMAKE_INCDIR_OPENGL_ES2 = /home/muaddib/hola/buildroot-2015.02-sk-gl/output/host/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/include/GLES2
QMAKE_LIBDIR_OPENGL_ES2 = /home/muaddib/hola/buildroot-2015.02-sk-gl/output/host/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/lib
QMAKE_INCDIR_EGL = /home/muaddib/hola/buildroot-2015.02-sk-gl/output/host/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/include/EGL
QMAKE_LIBDIR_EGL = /home/muaddib/hola/buildroot-2015.02-sk-gl/output/host/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/lib |
|
|
|
|
|
sasamy |
|
|
|
|
|
|
|
Пункты: 83540 |
Регистрация: 14.08.2009 |
|
|
|
Поддержка 4.8 есть в старом буилдруте (на фтп для всех плат), в 2014.08-sk помоему достаточно будет заменить каталог package/qt и если надо последний релиз - 4.8.5 заменить на 4.8.6. |
|
|
|
|
|
muaddib |
|
|
|
|
|
|
|
Пункты: 1232 |
Регистрация: 20.11.2014 |
|
|
|
заменил каталог package/qt в 2014.08-sk как вы сказали, ошибка не исчезла |
|
|
|
|
|
sasamy |
|
|
|
|
|
|
|
Пункты: 83540 |
Регистрация: 14.08.2009 |
|
|
|
Замените еще *.pc файлы - они нужны для pkg-config, лежат тут
package/freescale-imx/gpu-viv-bin-mx6q
egl.pc
glesv2.pc
vg.pc
по умолчанию OpenGL использует иксы, там дописаны флаги чтобы в инклудах не подключались иксовые хидеры - из-за этого тестовые программы и не собираются - иксов нет. Чтобы после этого все заново не пересобирать - можно просто удалить в output/build директорию gpu-viv-bin-mx6q и qt |
|
|
|
|
|
muaddib |
|
|
|
|
|
|
|
Пункты: 1232 |
Регистрация: 20.11.2014 |
|
|
|
Спасибо, все собралось.
Я так понимаю для сборки Qt5 с поддержкой GL тоже надо копировать pc-файлы, чтобы сборка велась не под иксы? |
|
|
|
|
|
muaddib |
|
|
|
|
|
|
|
Пункты: 1232 |
Регистрация: 20.11.2014 |
|
|
|
Qt 5 тоже собирается если сделать замену pc-файлов. |
|
|
|
|
|
|