Qt5's Linux Requirements Cause Problems

Posted by Steven Starr on September 15, 2012

With XCB being a requirement for the Linux version of Qt 5.0, and Xlib not being supported, it's causing problems for some wishing to adopt this forthcoming tool-kit.

Qt 5.0 on Linux is using the X C-language Bindings rather than Xlib since that's what is generally favored these days for communicating with the X.Org Server. On Qt4, Xlib was supported. Just one day after there was the controversial freelance article about Mono being desirable for Linux, another developer is sharing his freelance views on a separate project. Steven Starr as a Linux desktop developer wrote into Phoronix with his views (well, it's more along the lines of a brief rant but does spark a valid point) on Qt5 about the change.

I wonder about Qt developers some times.

Qt5 is OpenGL based right, well XCB is a requirement on Linux now, it wasn't on Qt4. And XLIB isn't supported.

Let me throw out a quote from the XCB devs.
XCB-GLX only communicates with the X server, it does not perform any hardware initialization or touch the OpenGL client-side state. Because of this XCB-GLX cannot be used as a replacement for the GLX API. To use OpenGL in the X Windowing system, one must use the GLX API, and the GLX API is closely coupled with Xlib. As a result, an OpenGL application on the X Windows must use Xlib and thus can't be done using only XCB. [Citation]
So what does this mean?

It means that they're forcing us to install and use XCB that doesn't support Hardware Accelerated Graphics using your ATI/NVIDIA binary drivers. And it ends up reverting back and using XLIB/GLX anyways.

Qt5 + XCB = Low Level Crippled API Wrapper for a Higher Level Fully Functional API.

If you ever wonderd why KDE4 and Nvidia cards are constantly breaking theres your answer. Because some stupid fuck thought XCB was cool because someone else told him it was.

The reason I am soooo pissed is because I have been writing a new Qt Desktop Environment for the last 1-1/2 years and Qt devs broke it by removing the QX11 API's. And my new desktop is blazzzzzzing rubber melting FAST!!!!


Has Qt5 with XCB caused problems for you? This isn't a Linux-specific problem but any Qt platform using X. Share your thoughts in the Phoronix Forums. Should you have any other freelance article to share with the Phoronix reader base, feel free to contact Phoronix.

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Sumo Lounge Emperor
  2. Gallium3D Continues Improving OpenGL For Older Radeon GPUs
  3. 15-Way Open vs. Closed Source NVIDIA/AMD Linux GPU Comparison
  4. Nouveau vs. NVIDIA Linux Comparison Shows Shortcomings
Latest Software Articles
  1. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
  2. AMD Radeon R600 GPU LLVM 3.3 Back-End Testing
  3. F2FS File-System Shows Regressions On Linux 3.10
  4. Previewing The Radeon Gallium3D Shader Optimizations
Latest Linux News
  1. Mageia 3 Released, Still Using Legacy GRUB
  2. NetBSD 6.1 Brings In More Features
  3. Using Six Monitors With AMD's Open-Source Linux Driver
  4. Benchmarking The Intel P-State, CPUfreq Changes
  5. FreeBSD Still Working On Next-Gen Package Manager
  6. DNF Still Advancing As Experimental Yum For Fedora
  7. Logitech Begins Supporting Linux Users
  8. Modern Intel Gallium3D Driver Still Being Toyed With
  9. Linux 3.10 Kernel Benchmarks On A Core i7 Laptop
  10. GCC 4.8.1 Compiler Due To Be Out Next Week
  11. Linux 3.10 Kernel Benchmarks For Intel Ivy Bridge
Latest Forum Talk
  1. Logitech Begins Supporting Linux Users
  2. Kubuntu, KDE Has Little Hope For Ubuntu's Mir
  3. Mageia 3 Released, Still Using Legacy GRUB
  4. OpenSUSE Considers Replacing LXDE With E17
  5. Using Six Monitors With AMD's Open-Source Linux...
  6. Sumo Lounge Emperor
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite