[oi-dev] QT5.8 alpha1 testing build

Мартин Бохниг opensxce at mail.ru
Wed Sep 21 05:25:29 UTC 2016



Hi Aurélien,


I'm by NO means intending to unintentionally diminish your qt5 work.
All I'm saying is: Qt5.8 is simply too new in every aspect.
It needs to be migrated in carefully and in paralel to good old stable 4.8

As promised I now wanted to port vbox5 back to Qt5 and run a test compile against your bins.
This showed me 2 things:


First of all it simply isn't a good fit yet, if the Qt5 version is above Qt5.6.

Secondly my host is too old (and if it wasn't, then most test users' host would be and then their tests would have failed).
I didn't even come to any point close to getting Vbox linked against your bins so I cannot even say, if it would actually work now or still crash at start with
> with all I would get was: "gtk_menu_attach_to_widget(): menu already
> attached to GtkMenuItem"

... as it did with the Qt5.8 bins I built myself over last week.

But even now without the final confirmation I can say: Oracle Vbox is not yet by default compatible to 5.6 or higher - that's a fact.

Here the individual dilemmata:

#0.)
During ./configure of Vbox5 in the checks for Qt5 it requires the same CFLAGS/CXXFLAGS as Qt5.6 or higher does: -std=gnu++11
BUT as soon as Vbox compile runs for 1 or 2 minutes, it encounters the first (of hundred) points where -std=gnu++11 BREAKS the Vbox5 compile.


#1.) My host is too old and there I ran into such situations again where I in the past shouted I HATE IPS.
Your Qt5 is linked against several (!) libs that are not yet available on my machine in the matching version.
But there is no -f or -ignore-ips-insanity option to get these bits installed here without perhaps some full upgrade (still didn't ever check if that really works).

I could work around that for some time with symlinks, but after all it failed because the linked in versions also get checked during linkage, but don't match. 
Then I attempted to install the missing bits (here only one example), but IPS's dictatorship mode never lets me.


# pkg install libpng16
Creating Plan (Checking for conflicting actions): \
pkg install: The following packages all deliver file actions to usr/share/man/man3/libpng.3:

  pkg://openindiana.org/image/library/libpng16@1.6.21,5.11-2016.0.0.0:20160701T213555Z
  pkg://openindiana.org/image/library/libpng14@1.4.19,5.11-2015.0.2.0:20160404T221912Z

These packages may not be installed together. Any non-conflicting set may
be, or the packages must be corrected before they can be installed.

The requested change to the system attempts to install multiple actions
for link 'usr/bin/libpng-config' with conflicting attributes:

    1 package delivers 'link path=usr/bin/libpng-config target=libpng14-config':
        pkg://openindiana.org/image/library/libpng14@1.4.19,5.11-2015.0.2.0:20160404T221912Z
    1 package delivers 'link path=usr/bin/libpng-config target=libpng16-config':
        pkg://openindiana.org/image/library/libpng16@1.6.21,5.11-2016.0.0.0:20160701T213555Z

These packages may not be installed together.  Any non-conflicting set may
be, or the packages must be corrected before they can be installed.

The following packages all deliver file actions to usr/share/man/man3/libpngpf.3:

  pkg://openindiana.org/image/library/libpng16@1.6.21,5.11-2016.0.0.0:20160701T213555Z
  pkg://openindiana.org/image/library/libpng14@1.4.19,5.11-2015.0.2.0:20160404T221912Z

These packages may not be installed together. Any non-conflicting set may
be, or the packages must be corrected before they can be installed.

The requested change to the system attempts to install multiple actions
for link 'usr/include/pngconf.h' with conflicting attributes:

    1 package delivers 'link path=usr/include/pngconf.h target=libpng14/pngconf.h':
        pkg://openindiana.org/image/library/libpng14@1.4.19,5.11-2015.0.2.0:20160404T221912Z
    1 package delivers 'link path=usr/include/pngconf.h target=libpng16/pngconf.h':
        pkg://openindiana.org/image/library/libpng16@1.6.21,5.11-2016.0.0.0:20160701T213555Z

These packages may not be installed together.  Any non-conflicting set may
be, or the packages must be corrected before they can be installed.

The requested change to the system attempts to install multiple actions
for link 'usr/include/png.h' with conflicting attributes:

    1 package delivers 'link path=usr/include/png.h target=libpng14/png.h':
        pkg://openindiana.org/image/library/libpng14@1.4.19,5.11-2015.0.2.0:20160404T221912Z
    1 package delivers 'link path=usr/include/png.h target=libpng16/png.h':
        pkg://openindiana.org/image/library/libpng16@1.6.21,5.11-2016.0.0.0:20160701T213555Z

These packages may not be installed together.  Any non-conflicting set may
be, or the packages must be corrected before they can be installed.

The requested change to the system attempts to install multiple actions
for link 'usr/lib/amd64/libpng.so' with conflicting attributes:

    1 package delivers 'link path=usr/lib/amd64/libpng.so target=libpng14.so':
        pkg://openindiana.org/image/library/libpng14@1.4.19,5.11-2015.0.2.0:20160404T221912Z
    1 package delivers 'link path=usr/lib/amd64/libpng.so target=libpng16.so':
        pkg://openindiana.org/image/library/libpng16@1.6.21,5.11-2016.0.0.0:20160701T213555Z

These packages may not be installed together.  Any non-conflicting set may
be, or the packages must be corrected before they can be installed.

The requested change to the system attempts to install multiple actions
for link 'usr/lib/libpng.so' with conflicting attributes:

    1 package delivers 'link path=usr/lib/libpng.so target=libpng14.so':
        pkg://openindiana.org/image/library/libpng14@1.4.19,5.11-2015.0.2.0:20160404T221912Z
    1 package delivers 'link path=usr/lib/libpng.so target=libpng16.so':
        pkg://openindiana.org/image/library/libpng16@1.6.21,5.11-2016.0.0.0:20160701T213555Z

These packages may not be installed together.  Any non-conflicting set may
be, or the packages must be corrected before they can be installed.

The following packages all deliver file actions to usr/share/man/man5/png.5:

  pkg://openindiana.org/image/library/libpng16@1.6.21,5.11-2016.0.0.0:20160701T213555Z
  pkg://openindiana.org/image/library/libpng14@1.4.19,5.11-2015.0.2.0:20160404T221912Z

These packages may not be installed together. Any non-conflicting set may
be, or the packages must be corrected before they can be installed.

The requested change to the system attempts to install multiple actions
for link 'usr/lib/amd64/pkgconfig/libpng.pc' with conflicting attributes:

    1 package delivers 'link path=usr/lib/amd64/pkgconfig/libpng.pc target=libpng14.pc':
        pkg://openindiana.org/image/library/libpng14@1.4.19,5.11-2015.0.2.0:20160404T221912Z
    1 package delivers 'link path=usr/lib/amd64/pkgconfig/libpng.pc target=libpng16.pc':
        pkg://openindiana.org/image/library/libpng16@1.6.21,5.11-2016.0.0.0:20160701T213555Z

These packages may not be installed together.  Any non-conflicting set may
be, or the packages must be corrected before they can be installed.

The requested change to the system attempts to install multiple actions
for link 'usr/lib/pkgconfig/libpng.pc' with conflicting attributes:

    1 package delivers 'link path=usr/lib/pkgconfig/libpng.pc target=libpng14.pc':
        pkg://openindiana.org/image/library/libpng14@1.4.19,5.11-2015.0.2.0:20160404T221912Z
    1 package delivers 'link path=usr/lib/pkgconfig/libpng.pc target=libpng16.pc':
        pkg://openindiana.org/image/library/libpng16@1.6.21,5.11-2016.0.0.0:20160701T213555Z

These packages may not be installed together.  Any non-conflicting set may
be, or the packages must be corrected before they can be installed.

The requested change to the system attempts to install multiple actions
for link 'usr/bin/amd64/libpng-config' with conflicting attributes:

    1 package delivers 'link path=usr/bin/amd64/libpng-config target=libpng14-config':
        pkg://openindiana.org/image/library/libpng14@1.4.19,5.11-2015.0.2.0:20160404T221912Z
    1 package delivers 'link path=usr/bin/amd64/libpng-config target=libpng16-config':
        pkg://openindiana.org/image/library/libpng16@1.6.21,5.11-2016.0.0.0:20160701T213555Z

These packages may not be installed together.  Any non-conflicting set may
be, or the packages must be corrected before they can be installed.


So _if_ we want to use Qt5 for anything, then not a version newer than 5.5.
And then you might say again, that it is a waste of time to deal with such "old" Qt5 version (5.5) and that this would require us to re-invent the wheel later on.

And this version is btw the last one which on my setup does not yet run into the other problem:  http://stackoverflow.com/questions/38549755/raspberry-pi-2-and-qt-5-7-make-stuck-at-qtbase-bin-qmake-conf-qtbase-q

In the best interest of the stability of Oi it is best to use the Qt4 Vbox5, as many user feedback messages have shown.

BTW, the trick provided by Christian Meier to get Vbox5 running as root *WORKS* and *VOILA*, suddenly usb devices (of the real host) do get listed for attachment :-)


No network cable or anything is needed, just locally:


A) ssh -X localhost

and then

B) su  (without -)

C) /opt/VirtualBox/VirtualBox

And bingo! USB devices are suddenly all there and also non-USB passthrough works as root!
This is required to install copy-protected optical media to MS-Win guests, such as in my case the Russian Language learning software requiring not only a vendor's genuine serial number but also running authentication checks against the physical (!!!) DVD itself.

Big thanks to longterm OpenSXCE community member/supporter and now Hipster co-migrant Christian Meier https://openindiana.org/pipermail/openindiana-discuss/2016-September/019544.html  !!!
Thanks also to all others who tested and reported, including now also tnx to Mr. Carl Brewer https://openindiana.org/pipermail/openindiana-discuss/2016-September/019560.html 


Regards,
%martin


>Понедельник, 19 сентября 2016, 9:17 UTC от Aurélien Larcher <aurelien.larcher at gmail.com>:
>
>Hi Martin,
>
>>
>> That's why qt5 is really not urgent.
>> qt4 works fine for VirtualBox5.1.x
>
>Yes I agree that you Qt4 build is the way to go for the moment.
>The Qt5 builds are for the long term, I would like to get some testing
>done to check if we need to fix some things and can upstream some
>patches.
>Maybe next year, when we are confident that Qt5 is good or if
>VirtualBox breaks compatibility with Qt4 we have a fallback.
>
>>
>> To change Qt and even to replace Qt4.8 totally with it (or only the symlinks
>> to /usr?) involves *tons* of complexity if done right, beware the
>> implications to all clients who depend on it. Will they all work fine on
>> Qt5? I doubt that. Ao at least /usr/lib/qt/4.8 _must_ be preserved. And as
>> said: The symlinks to prefix=/usr are _evil_, since they break
>> multiversionism.
>> I'm glad you uploaded 64bit test bins built on *your* Hipster environment
>> (where you don't appear to run into
>>  http://stackoverflow.com/questions/38549755/raspberry-pi-2-and-qt-5-7-make-stuck-at-qtbase-bin-qmake-conf-qtbase-q
>> unlike me on Hipster 2015 illumos-f83b46b).
>
>I did not prepare the oi-userland component for now as I am building
>the GIT branches but the install already follows the same structure as
>Qt4.8: Qt5.8 lives in /usr/lib/qt/5.8 in its own prefix.
>
>>
>> I can later later give it a shot to see if VirtualBox would work with your
>> bins better than with the ones I created here, as outlined in
>>  https://openindiana.org/pipermail/oi-dev/2016-September/004835.html
>>
>> with all I would get was: "gtk_menu_attach_to_widget(): menu already
>> attached to GtkMenuItem"
>
>It seems the build I obtained does not have the same issue but there
>are other problems (XCB warnings and incorrect keyboard entry for some
>widgets).
>
>>
>>
>> However, as you noticed independently of your email I kept working on
>> vbox5_qt4 all over the entire weekend night/day and funnily posted to list
>> almost simultaneously as you:
>>  https://openindiana.org/pipermail/oi-dev/2016-September/004845.html
>>
>>
>> For now, "Good Night" and till later.
>> Tnx for your Qt5.8 bins - but as said, let's rather work on that slowly and
>> test everything 500 times _first_.
>> Vbox will simply use Qt4.8 for the time being :)
>
>Yes it is perfect, no problem ;) Qt5 is just for me to prepare some
>independent testing.
>
>Rest well!
>
>Aurelien
>
>
>>
>>
>> regards,
>> %martin
>>
>>
>>
>> Понедельник, 19 сентября 2016, 8:41 UTC от Aurélien Larcher
>> < aurelien.larcher at gmail.com >:
>>
>> Hi,
>> if there is any interest, snapshot from Sept 15 2016:
>>
>> qt5.8-OI201604-20160915.tar.bz2 (91MB) @  http://ovh.to/w5Vjj1D
>>
>> It contains 32bit and 64bit builds installed in /usr/lib/qt/5.8.
>> Best regards
>>
>> Aurelien
>>
>> --
>> ---
>> Praise the Caffeine embeddings
>>
>> _______________________________________________
>> oi-dev mailing list
>>  oi-dev at openindiana.org
>>  https://openindiana.org/mailman/listinfo/oi-dev
>>
>>
>>
>> _______________________________________________
>> oi-dev mailing list
>>  oi-dev at openindiana.org
>>  https://openindiana.org/mailman/listinfo/oi-dev
>
>
>
>-- 
>---
>Praise the Caffeine embeddings

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://openindiana.org/pipermail/oi-dev/attachments/20160921/3208620f/attachment-0005.html>


More information about the oi-dev mailing list