eglfs + framebuffer - display issue
-
wrote on 21 Jul 2017, 07:14 last edited by
Sorry, I'm not good with english.
Right now i'm in work so i can't post output from console.
Previously I compiled qt with bad options (running configure command without some parameters), but also installed qt creator from repository (apt-get). Later I removed whole directory with qt source, and made new with clean sources. Inside new sources directory I have launched configure script in terminal. Process starts with qmake build, but stops with error: load(qt_config) not recognized (or similar - i'll post output after work). So in console i typed "make clean all" and then instead make shell calls /usr/lib/x86_64-linux-gnu/qt5/bin/qmake. Then I removed all qt from system with qt5 directory via apt-get an nothing changes - cant run configure script because of calling non existing /usr/lib/x86_64-linux-gnu/qt5/bin/qmake. I've exported MAKE=/usr/bin/make - still error: load(qt_config) -
You should start by cleaning things.
Delete your current Qt sources and then uncompress the archive again so you are really in a clean state to build.
Then, as suggested make an out of source build like @jsulm showed.
When you want to use qmake, use the full path to the executable. The one found by your console is the system installed qmake and it's currently not the one you want to use.
-
wrote on 21 Jul 2017, 09:56 last edited by
my point is i removed qt5 (with qmake) installed in /usr/lib/x86_64-linux-gnu/qt5/bin/qmake, but still make command points to this particular qmake
-
my point is i removed qt5 (with qmake) installed in /usr/lib/x86_64-linux-gnu/qt5/bin/qmake, but still make command points to this particular qmake
@python74 Please do a clean rebuild first! Old Makefiles will still point to that old qmake as they do not know that you removed it.
-
wrote on 21 Jul 2017, 12:06 last edited by
You mean remove makefiles from qt source directory? I deleted whole directory and unpacked sources fro zip again
-
wrote on 21 Jul 2017, 23:42 last edited by
thanks very much guys. I know im pain in the ass but explain me please one more thing: A20 have mali GPU. After config i have:
QPA backends:
DirectFB ............................... no
EGLFS .................................. yes
EGLFS details:
EGLFS i.Mx6 .......................... no
EGLFS i.Mx6 Wayland .................. no
EGLFS EGLDevice ...................... no
EGLFS GBM ............................ yes
EGLFS Mali ........................... no
EGLFS Raspberry Pi ................... no
EGL on X11 ........................... yes
LinuxFB ................................ yes
VNC .................................... yes
Mir client ............................. noWhy scripts dont recognize mali? It is a way to enable it? like ie CFG_EGLFS_MALI=yes
-
You have to use your device sysroot. If you are using the one provided by Linaro, it won't contain the specifics for your target.
-
wrote on 30 Jul 2017, 20:57 last edited by
Hi
After few nights of work finally done. I've cleared all files and run compile process on new sources so I have now Qt5.9.1. Very important: on sunxi linux with Allwinner A20 you need to change:qtbase/src/plugins/platforms/eglfs/api/qeglfsdeviceintegration.cpp
EGLNativeWindowType QEglFSDeviceIntegration::createNativeWindow(QPlatformWindow *platformWindow,
const QSize &size,
const QSurfaceFormat &format)
{
Q_UNUSED(platformWindow);
Q_UNUSED(size);
Q_UNUSED(format);
//return 0;
static struct mali_native_window native_window = {
.width = (short unsigned int)size.width(),
.height = (short unsigned int)size.height(),
};
return &native_window;
}or eglfs fails.
Thank You guys veeery much for help and Your patience
Regards
Rafal