Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Qt packages #212

Open
matteodelabre opened this issue Jan 11, 2021 · 11 comments
Open

Add Qt packages #212

matteodelabre opened this issue Jan 11, 2021 · 11 comments
Labels
packages Add or improve packages of the repository

Comments

@matteodelabre
Copy link
Member

matteodelabre commented Jan 11, 2021

I’m currently thinking about making a Qt package for Toltec. This could allow us to have more up-to-date versions of Qt, as well as including a precise set of Qt libs which does not change between two rM updates. This is blocked by:

See the discussion in #83.

@matteodelabre matteodelabre added the packages Add or improve packages of the repository label Jan 11, 2021
@coozoo
Copy link

coozoo commented Jan 13, 2021

That's very nice idea.. because lack of qwidgets it's really annoying. And qt libs are really big to provide them together with each app.

@coozoo
Copy link

coozoo commented Jan 14, 2021

Have you tried to compile QT and any widget application using it?
Because actually I've compiled QT and tried to compile simple widget app (in the way like it is made in oxide) and I'm getting error in loading epaper plugin. I'm able to see that error only with QT_DEBUG_PLUGINS=1

QLibraryPrivate::loadPlugin failed on "/opt/testwidget/bin/platforms/libepaper.so" : "Cannot load library /opt/testwidget/bin/platforms/libepaper.so: (/opt/testwidget/bin/platforms/libepaper.so: symbol _ZN11QFontEngine14bitmapForGlyphEj6QFixedRK10QTransform version Qt_5_PRIVATE_API not defined in file libQt5Gui.so.5 with link time reference)"

@t1m-dev
Copy link

t1m-dev commented Feb 15, 2021

Do you plan to include Qt WebEngine as well?

@matteodelabre
Copy link
Member Author

It’s not off the table. We’re still waiting on #274 before we can start investigating this.

@coozoo
Copy link

coozoo commented Feb 25, 2021

Do you plan to include Qt WebEngine as well?

I don't think it's possible to do for our device as QtWebEngine requires opengl....

@Eeems
Copy link
Member

Eeems commented Feb 25, 2021

I don't think it's possible to do for our device as QtWebEngine requires opengl....

So use MESA or another software only implementation of opengl?

@coozoo
Copy link

coozoo commented Feb 25, 2021

So use MESA or another software only implementation of opengl?

Actually, I'm not sure. I've just tried to compile it for our freescale cpu and for that you need to configure qt with -no-opengl flag. And sure with this flag qtwebengine throws error... Maybe it's possible but definitely it's require to dig somewhere deep inside QT...

UPD there is some nice answer
https://stackoverflow.com/questions/33090346/is-there-any-way-to-use-qtwebengine-without-opengl

and this in reply to answer
https://lists.qt-project.org/pipermail/qtwebengine/2015-December/000282.html

so theoretically it is possible :)

@matteodelabre
Copy link
Member Author

@matteodelabre
Copy link
Member Author

Work is ongoing on the package/qt branch. Currently it contains the following packages: libqsgepaper, libepaper-qpa, libqt5-base (including Qt Widgets), libqt5-declarative, libqt5-quickcontrols2, libqt5-svg, and libqt5-websockets. The remaining part is to figure out a simple way to make Qt apps use the libs from /opt instead of the system ones.

@coozoo
Copy link

coozoo commented Apr 5, 2021

The remaining part is to figure out a simple way to make Qt apps use the libs from /opt instead of the system ones.

how about qt.conf shipped with each app? Because change it system wide is not good idea.

@matteodelabre
Copy link
Member Author

matteodelabre commented Apr 5, 2021

Before qt.conf is even loaded, the app needs to load the correct libQt5Core library (i.e., the one in /opt instead of the one in /usr). For that, I plan on setting rpath on each app binary that needs to use the Qt package. Once the correct dynamic dependencies are loaded, there should be no need of overriding qt.conf since the apps will have the correct paths baked in. Binaries without rpath set will continue to use the system-provided Qt.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
packages Add or improve packages of the repository
Projects
None yet
Development

No branches or pull requests

4 participants