1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking Benchmarking Platform
Phoromatic Test Orchestration

Qt5's Linux Requirements Cause Problems

Qt

Published on 15 September 2012 03:37 AM EDT
Written by Steven Starr in Qt
110 Comments

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!!!!

Qt5's Linux Requirements Cause Problems


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.

Latest Articles & Reviews
  1. Trying Out The Modern Linux Desktops With 4 Monitors + AMD/NVIDIA Graphics
  2. Turning A Basement Into A Big Linux Server Room
  3. NVIDIA's $1000+ GeForce GTX TITAN X Delivers Maximum Linux Performance
  4. OS X 10.10 vs. Ubuntu 15.04 vs. Fedora 21 Tests: Linux Sweeps The Board
  5. The New Place Where Linux Code Is Constantly Being Benchmarked
  6. 18-GPU NVIDIA/AMD Linux Comparison Of BioShock: Infinite
Latest Linux News
  1. Fedora 22 Alpha Now Available For AArch64 & PowerPC64
  2. Systemd Developers Did NOT Fork The Linux Kernel
  3. PulseAudio 7.0 To Enable LFE Remixing By Default
  4. Features & Changes Coming For Mir 0.13
  5. How Far Valve Has Come: Three Years Ago They Needed OpenGL Linux Help
  6. Audacity 2.1 Improves Noise Reduction, Adds Real-Time Effects Preview
  7. Linux 4.0-rc6 Kernel Released
  8. Automatically Managing The Linux Benchmarks Firing Constantly
  9. The Big Features Of The Linux 4.0 Kernel
  10. Mesa's Android Support Is Currently In Bad Shape
Most Viewed News This Week
  1. Introducing The Library Operating System For Linux
  2. Improved OpenCL Support For Blender's Cycles Renderer
  3. Allwinner Continues Jerking Around The Open-Source Community
  4. Open-Source Driver Fans Will Love NVIDIA's New OpenGL Demo
  5. GNOME 3.16 Released: It's Their Best Release Yet
  6. Systemd Change Allows For Stateless Systems With Tmpfs
  7. Ubuntu 15.04 Final Beta Released
  8. Nuclide: Facebook's New Unified IDE