probonopd / linuxdeployqt

Makes Linux applications self-contained by copying in the libraries and plugins that the application uses, and optionally generates an AppImage. Can be used for Qt and other applications
Other
2.22k stars 414 forks source link

CentOS 7 / libX11-xcb.so.1 / QtWebEngine freezing #582

Open phat-pat opened 1 year ago

phat-pat commented 1 year ago

In my project, I had an issue where running with -bundle-non-qt-libs was causing my app to freeze permanently as soon as I tried to open a tab that used QtWebEngine.

I'm building on a CentOS 7 machine with Qt 5.15.13 installed. When running the bundled binary (with libX11-xcb.so.1 included), it would run fine on CentOS 7, Rocky 8, and Ubuntu 20 (all on version <1.7 of libX11-xcb), but broke on Rocky 9, Fedora 37/38, and Ubuntu 22 (all come with version 1.7+)

It seems that even though libX11.so.6 and libxcb.so.1 are both on the excludelist, libX11-xcb.so.1 isn't. This is odd, since libX11-xcb.so.1 is an interoperability library for the two excluded libs. It seems like their version mismatch is causing issues. It absolutely could be QtWebEngine's fault, or something else, but that's what it looks like to me.

After adding -exclude-libs=libX11-xcb.so.1 to my linuxdeployqt invocation, everything worked. This might be specific to my situation, but it seems like it might be a good idea in general to connect this library's inclusion or exclusion to the other two.

probonopd commented 1 year ago

Thanks @phat-pat. Please try with the latest continuous build.

phat-pat commented 1 year ago

I don't believe the continuous builds work on CentOS 7 anymore, see #489.

I rebuilt from source and removed -exclude-libs=libX11-xcb.so.1. Builds are working great, so thank you!