Skip to Main Content

Infrastructure Software

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Qt 5.13 on Solaris 11.4

Tomáš GlozarAug 16 2019 — edited Aug 17 2019

Hi,

This may not be not much of a question than a curiosity. I have an idea for an experiment involving Solaris on desktop (Crossbow, ZFS and containers are all useful in it, hence the choice of the operating system). An integral part of it is, of course, a desktop environment; however I find GNOME 3 to be slow and would like to see a Qt-based one (either LXQt or even Plasma, if possible).

The most recent version of Qt (5.13) surprisingly builds without much trouble on Solaris 11.4, there is only one "little" problem - the configuration script cannot find XCB, and therefore compiles without X11 support! (An extreme approach would be to extend the experiment and use VNC instead of X11 )

It can find X11 fine (it seems like this breaks when pkg-config is installed, maybe because of missing .pc files in Solaris):

...

Checking for x11... yes

Checking for xcomposite... yes

Checking for xcursor... yes

Checking for xi... yes

Checking for xtst... yes

Checking for zlib... yes

...

However, when we scroll a few lines up...

Checking for IPv6 ifname... yes

Checking for OpenSSL 1.1 support... no

Checking for xkbcommon >= 0.5.0... yes

Checking for XCB >= 1.9... no

Checking for KMS... no

And don't get me wrong, I definitely have XCB installed:

root@solaris:~# pkg info libxcb xcb-util

          Name: x11/library/libxcb

       Summary: libxcb - The X11 protocol C Binding

   Description: The X protocol C-language Binding (XCB) is a replacement for

                Xlib featuring a small footprint, latency hiding, direct access

                to the protocol, improved threading support, and extensibility.

      Category: System/X11

         State: Installed

     Publisher: solaris

       Version: 1.12

        Branch: 11.4.0.0.1.14.0

Packaging Date: Tue Aug 14 17:33:52 2018

          Size: 7.29 MB

          FMRI: pkg://solaris/x11/library/libxcb@1.12-11.4.0.0.1.14.0:20180814T173352Z

   Project URL: http://xcb.freedesktop.org/

    Source URL: https://www.x.org/releases/individual/xcb/libxcb-1.12.tar.bz2

                https://xcb.freedesktop.org//releases/individual/xcb/xcb-proto-1.12.tar.bz2

             Name: x11/library/xcb-util

          Summary: xcb-util - The X11 protocol C bindings utility libraries

      Description: The xcb-util module provides a number of libraries which sit

                   on top of libxcb, the core X protocol library, and some of

                   the extension libraries. These experimental libraries provide

                   convenience functions and interfaces which make the raw X

                   protocol more usable. Some of the libraries also provide

                   client-side code which is not strictly part of the X protocol

                   but which have traditionally been provided by Xlib.

         Category: System/X11

            State: Installed

        Publisher: solaris

          Version: 0.4.0

           Branch: 11.4.0.0.1.14.0

   Packaging Date: Tue Aug 14 17:34:44 2018

Last Install Time: Fri Aug 16 14:37:32 2019

             Size: 814.52 kB

             FMRI: pkg://solaris/x11/library/xcb-util@0.4.0-11.4.0.0.1.14.0:20180814T173444Z

      Project URL: http://xcb.freedesktop.org/XcbUtil/

       Source URL: https://www.x.org/releases/individual/xcb/xcb-util-0.4.0.tar.bz2

                   https://www.x.org/releases/individual/xcb/xcb-util-cursor-0.1.3.tar.bz2

                   https://www.x.org/releases/individual/xcb/xcb-util-image-0.4.0.tar.bz2

                   https://www.x.org/releases/individual/xcb/xcb-util-errors-1.0.tar.bz2

                   https://www.x.org/releases/individual/xcb/xcb-util-keysyms-0.4.0.tar.bz2

                   https://www.x.org/releases/individual/xcb/xcb-util-renderutil-0.3.9.tar.bz2

                   https://www.x.org/releases/individual/xcb/xcb-util-wm-0.4.1.tar.bz2

And the files also seem to be in place:

root@solaris:~# ls /usr/include/xcb

bigreq.h          present.h         sync.h            xcb_event.h       xcbext.h          xprint.h

composite.h       randr.h           xc_misc.h         xcb_ewmh.h        xevie.h           xproto.h

damage.h          record.h          xcb.h             xcb_icccm.h       xf86dri.h         xselinux.h

dpms.h            render.h          xcb_atom.h        xcb_image.h       xfixes.h          xtest.h

dri2.h            res.h             xcb_aux.h         xcb_keysyms.h     xia.h             xv.h

dri3.h            screensaver.h     xcb_bitops.h      xcb_pixel.h       xinerama.h        xvmc.h

ge.h              shape.h           xcb_cursor.h      xcb_renderutil.h  xinput.h

glx.h             shm.h             xcb_errors.h      xcb_util.h        xkb.h

root@solaris:~# ls /usr/lib/libxcb*

/usr/lib/libxcb-composite.a           /usr/lib/libxcb-present.so            /usr/lib/libxcb-xevie.so.0

/usr/lib/libxcb-composite.la          /usr/lib/libxcb-present.so.0          /usr/lib/libxcb-xevie.so.0.0.0

/usr/lib/libxcb-composite.so          /usr/lib/libxcb-present.so.0.0.0      /usr/lib/libxcb-xf86dri.a

/usr/lib/libxcb-composite.so.0        /usr/lib/libxcb-randr.a               /usr/lib/libxcb-xf86dri.la

/usr/lib/libxcb-composite.so.0.0.0    /usr/lib/libxcb-randr.la              /usr/lib/libxcb-xf86dri.so

/usr/lib/libxcb-cursor.so             /usr/lib/libxcb-randr.so              /usr/lib/libxcb-xf86dri.so.0

/usr/lib/libxcb-cursor.so.0           /usr/lib/libxcb-randr.so.0            /usr/lib/libxcb-xf86dri.so.0.0.0

/usr/lib/libxcb-cursor.so.0.0.0       /usr/lib/libxcb-randr.so.0.1.0        /usr/lib/libxcb-xfixes.a

/usr/lib/libxcb-damage.a              /usr/lib/libxcb-record.a              /usr/lib/libxcb-xfixes.la

/usr/lib/libxcb-damage.la             /usr/lib/libxcb-record.la             /usr/lib/libxcb-xfixes.so

/usr/lib/libxcb-damage.so             /usr/lib/libxcb-record.so             /usr/lib/libxcb-xfixes.so.0

/usr/lib/libxcb-damage.so.0           /usr/lib/libxcb-record.so.0           /usr/lib/libxcb-xfixes.so.0.0.0

/usr/lib/libxcb-damage.so.0.0.0       /usr/lib/libxcb-record.so.0.0.0       /usr/lib/libxcb-xinerama.a

/usr/lib/libxcb-dpms.a                /usr/lib/libxcb-render-util.so        /usr/lib/libxcb-xinerama.la

/usr/lib/libxcb-dpms.la               /usr/lib/libxcb-render-util.so.0      /usr/lib/libxcb-xinerama.so

/usr/lib/libxcb-dpms.so               /usr/lib/libxcb-render-util.so.0.0.0  /usr/lib/libxcb-xinerama.so.0

/usr/lib/libxcb-dpms.so.0             /usr/lib/libxcb-render.a              /usr/lib/libxcb-xinerama.so.0.0.0

/usr/lib/libxcb-dpms.so.0.0.0         /usr/lib/libxcb-render.la             /usr/lib/libxcb-xinput.a

/usr/lib/libxcb-dri2.a                /usr/lib/libxcb-render.so             /usr/lib/libxcb-xinput.la

/usr/lib/libxcb-dri2.la               /usr/lib/libxcb-render.so.0           /usr/lib/libxcb-xinput.so

/usr/lib/libxcb-dri2.so               /usr/lib/libxcb-render.so.0.0.0       /usr/lib/libxcb-xinput.so.0

/usr/lib/libxcb-dri2.so.0             /usr/lib/libxcb-res.a                 /usr/lib/libxcb-xinput.so.0.1.0

/usr/lib/libxcb-dri2.so.0.0.0         /usr/lib/libxcb-res.la                /usr/lib/libxcb-xkb.a

/usr/lib/libxcb-dri3.a                /usr/lib/libxcb-res.so                /usr/lib/libxcb-xkb.la

/usr/lib/libxcb-dri3.la               /usr/lib/libxcb-res.so.0              /usr/lib/libxcb-xkb.so

/usr/lib/libxcb-dri3.so               /usr/lib/libxcb-res.so.0.0.0          /usr/lib/libxcb-xkb.so.1

/usr/lib/libxcb-dri3.so.0             /usr/lib/libxcb-screensaver.a         /usr/lib/libxcb-xkb.so.1.0.0

/usr/lib/libxcb-dri3.so.0.0.0         /usr/lib/libxcb-screensaver.la        /usr/lib/libxcb-xprint.so

/usr/lib/libxcb-errors.so             /usr/lib/libxcb-screensaver.so        /usr/lib/libxcb-xprint.so.0

/usr/lib/libxcb-errors.so.0           /usr/lib/libxcb-screensaver.so.0      /usr/lib/libxcb-xprint.so.0.0.0

/usr/lib/libxcb-errors.so.0.0.0       /usr/lib/libxcb-screensaver.so.0.0.0  /usr/lib/libxcb-xtest.a

/usr/lib/libxcb-ewmh.so               /usr/lib/libxcb-shape.a               /usr/lib/libxcb-xtest.la

/usr/lib/libxcb-ewmh.so.2             /usr/lib/libxcb-shape.la              /usr/lib/libxcb-xtest.so

/usr/lib/libxcb-ewmh.so.2.0.0         /usr/lib/libxcb-shape.so              /usr/lib/libxcb-xtest.so.0

/usr/lib/libxcb-glx.a                 /usr/lib/libxcb-shape.so.0            /usr/lib/libxcb-xtest.so.0.0.0

/usr/lib/libxcb-glx.la                /usr/lib/libxcb-shape.so.0.0.0        /usr/lib/libxcb-xv.a

/usr/lib/libxcb-glx.so                /usr/lib/libxcb-shm.a                 /usr/lib/libxcb-xv.la

/usr/lib/libxcb-glx.so.0              /usr/lib/libxcb-shm.la                /usr/lib/libxcb-xv.so

/usr/lib/libxcb-glx.so.0.0.0          /usr/lib/libxcb-shm.so                /usr/lib/libxcb-xv.so.0

/usr/lib/libxcb-icccm.so              /usr/lib/libxcb-shm.so.0              /usr/lib/libxcb-xv.so.0.0.0

/usr/lib/libxcb-icccm.so.4            /usr/lib/libxcb-shm.so.0.0.0          /usr/lib/libxcb-xvmc.a

/usr/lib/libxcb-icccm.so.4.0.0        /usr/lib/libxcb-sync.a                /usr/lib/libxcb-xvmc.la

/usr/lib/libxcb-image.so              /usr/lib/libxcb-sync.la               /usr/lib/libxcb-xvmc.so

/usr/lib/libxcb-image.so.0            /usr/lib/libxcb-sync.so               /usr/lib/libxcb-xvmc.so.0

/usr/lib/libxcb-image.so.0.0.0        /usr/lib/libxcb-sync.so.1             /usr/lib/libxcb-xvmc.so.0.0.0

/usr/lib/libxcb-keysyms.so            /usr/lib/libxcb-sync.so.1.0.0         /usr/lib/libxcb.a

/usr/lib/libxcb-keysyms.so.1          /usr/lib/libxcb-util.so               /usr/lib/libxcb.la

/usr/lib/libxcb-keysyms.so.1.0.0      /usr/lib/libxcb-util.so.1             /usr/lib/libxcb.so

/usr/lib/libxcb-present.a             /usr/lib/libxcb-util.so.1.0.0         /usr/lib/libxcb.so.1

/usr/lib/libxcb-present.la            /usr/lib/libxcb-xevie.so              /usr/lib/libxcb.so.1.1.0

It's strange, isn't it? It would probably be a better idea to ask on a Qt forum (and I'll definitely do that), but maybe there happens to be someone here who knows what the problem may be.

This post has been answered by Tomáš Glozar on Aug 17 2019
Jump to Answer
Comments
Post Details
Added on Aug 16 2019
1 comment
629 views