[Solved] ERROR QOpenGLWidget example - Undefined symbol
-
wrote on 7 Jan 2015, 01:01 last edited by
Ok I see.
So if I understand correctly, I do NOT need to re-compile my custom built Qt or anything like that but I need to specify LD_LIBRARY_PATH in my QtCreator.
But when you say "It must contain the path to where your custom built Qt can be found on the target."
Does it mean that I need to copy my custom build Qt on my target ? It's 1.7GB, it's a lot for an embedded device. I only have it on my host right now.I have a "qt5" folder inside my /usr/lib/arm-linux-gnueabihf on my target with inside three folders "libexec", "plugins" and "qml" but there is nothing about QOpenGL. libexec has QtWebPluginProcess and QtWebProcess. Is it the place where I should have my QOpenGL libraries ?
What am I missing ?
Thank you,
Morgane
-
Since you only have it on your host, how do you expect your device to use it to run your application ? What device is it ? Currently most of them use e.g. sdcards that are generally big enough even for development.
You don't need to copy absolutely everything, the plugins/libraries your application is using would be enough
-
wrote on 8 Jan 2015, 18:42 last edited by
I copied the libQt5OpenGL.so.5.4.0 and I created the link of libQt5OpenGL.so on my target. I set the LD_LIBRARY_PATH in the Build environnement on Qt Creator to the folder where I copied the libraries but it is still not working...
What am I doing wrong ? -
wrote on 8 Jan 2015, 19:08 last edited by
I don't understand why is it so difficult to get a QOpenGLWidget working. I search for it and the code is with the QtWidgets.
Why a QMessageBox will work perfectly and not a QOpenGLWidget ? What is the difference between them ? -
It's the Run environment that you must update, it's when you run your application that LD_LIBRARY_PATH is used.
QMessageBox only relies on the widget module that seems to be properly deployed
-
wrote on 8 Jan 2015, 21:34 last edited by
I tried it, setting the LD_LIBRARY_PATH inside the Run Environment but I am still getting the error....
-
wrote on 8 Jan 2015, 21:42 last edited by
I also tried directly on the board by setting the LD_LIBRARY_PATH inside my terminal, running my binary file but I am still getting exactly the same error. Does it mean that I do not copy the good libraries ? What are they exactly ?
-
Which library did you copy exactly ?
-
wrote on 14 Jan 2015, 17:52 last edited by
Hi,
Actually I solved the problems. I copied the libQt5Core.so.5, libQt5Gui.so.5, libQt5OpenGL.so.5 and libQt5Widgets.so.5 in the same directory of the binary file and I do not get the errors about the libraries.
Now I'm dealing with the plugins "xcb" or "eglfs".
First I do not know which one to use for an embedded device. I found somewhere that eglfs is the best. Is it right ?I'm getting a "Could not create the egl surface: error = 0×300b" when using eglfs...
Any idea ? Should I create a new topic for that ?
-
eglfs best ? Depends on your use case. If it's a single application then yes since you won't have the Xorg layer in between.
Yes you should open a new one. In between, are you running an X server when you try to use the eglfs plugin ?
-
wrote on 15 Jan 2015, 00:39 last edited by
I will use XCB as people are recommending this one for my device. I created a new thread for my XCB-related-errors as it is not related to this one anymore.
Thank you for your help!!
21/22