Author Topic: Qt6 Application Testing  (Read 306538 times)

Paul Smedley

  • Hero Member
  • *****
  • Posts: 2377
  • Karma: +183/-0
    • View Profile
Re: Qt6 Application Testing
« Reply #765 on: January 19, 2025, 04:12:53 am »
Thanks Paul. I'm seeing some instability with Dooble on this one (for example - any Github page causes a silent exit), although the examples seem to work OK. One thing I noticed - the dates on the WebEngine files are about a month later than the ones i have from the last 6.2.10 and one file (\resources\icudtl.dat) is about 6 months later and a good bit larger. Decided to replace the WebEngine files with the ones from 6.2.10 and now it seems stability has returned, but I will test some more...

PS - that poppl133.dll file took care of the plugin error on Scribus - thanks! Renderframes doesn't work in 1.4.6 either because it depends on separate packages that are not ported to OS/2 - so no go with that. Still chasing the Unicode error...

Re: webengine and 6.2.11 - potentially I rebuild webengine AFTER I imaged the drive.... the only thing I remember doing is rebuilding it with system ICU - which didn't appear to make any differences...

re: the unicode error - I think it's packaging... looking at the code, it's looking for unicodenameslist.txt
Code: [Select]
UnicodeSearchModel::UnicodeSearchModel(QObject * /*parent*/)
{
setObjectName("UnicodeSearchModel");

QFile file(ScPaths::instance().shareDir() + "unicodenameslist.txt");
if (file.open( QIODevice::ReadOnly ) )
{
QStringList list = QString(file.readAll()).split('\n', Qt::SkipEmptyParts);
file.close();

QStringList line;
UnicodeStruct uni;
for ( QStringList::Iterator it = list.begin(); it != list.end(); ++it )
{
line = (*it).split(':', Qt::SkipEmptyParts);
uni.description = line[1].toLower();
uni.hex = line[0];
m_unicode.append(uni);
}
}
else
qDebug("UnicodeSearchModel: error reading unicodes!");
}

I suspect it's looking in the wrong spot...

Yep... move unicodenameslist.txt from \scribus\share\scribus\unicodenameslist.txt to \scribus\share
« Last Edit: January 19, 2025, 04:16:16 am by Paul Smedley »

Rich Walsh

  • Sr. Member
  • ****
  • Posts: 382
  • Karma: +26/-0
  • ONU! (OS/2 is NOT Unix!)
    • View Profile
Re: Qt6 Application Testing
« Reply #766 on: January 19, 2025, 04:27:48 am »
Re: webengine and 6.2.11 - potentially I rebuild webengine AFTER I imaged the drive.... the only thing I remember doing is rebuilding it with system ICU - which didn't appear to make any differences...

It seems that it did make a difference:  the 'Qt6WebEn.dll' in the latest drop wants 'icuuc69.dll' and 'icuin69.dll'. The previous version didn't want either of these files, numbered or unnumbered.

Paul Smedley

  • Hero Member
  • *****
  • Posts: 2377
  • Karma: +183/-0
    • View Profile
Re: Qt6 Application Testing
« Reply #767 on: January 19, 2025, 04:42:43 am »
Re: webengine and 6.2.11 - potentially I rebuild webengine AFTER I imaged the drive.... the only thing I remember doing is rebuilding it with system ICU - which didn't appear to make any differences...

It seems that it did make a difference:  the 'Qt6WebEn.dll' in the latest drop wants 'icuuc69.dll' and 'icuin69.dll'. The previous version didn't want either of these files, numbered or unnumbered.

OK then, it's the opposite case.... if it's looking for icuuc69.dll and icuin69.dll then that's system ICU...

For now - copy lib\Qt6WebEn.dll from the older package over the top of this one.... there's no functional changes to the webengine in some time....
« Last Edit: January 19, 2025, 05:10:38 am by Paul Smedley »

Paul Smedley

  • Hero Member
  • *****
  • Posts: 2377
  • Karma: +183/-0
    • View Profile
Re: Qt6 Application Testing
« Reply #768 on: January 19, 2025, 05:08:41 am »
Yep... move unicodenameslist.txt from \scribus\share\scribus\unicodenameslist.txt to \scribus\share
OK found the scribus bug causing this.... I guess maybe win32 doesn't use cmake install for packaging....

Paul Smedley

  • Hero Member
  • *****
  • Posts: 2377
  • Karma: +183/-0
    • View Profile
Re: Qt6 Application Testing
« Reply #769 on: January 19, 2025, 07:13:11 am »
ok https://smedley.id.au/tmp/qt6-6.2.11-qtwebengine-6.2.6-os2-20250119.zip is refreshed with a qt6weben.dll that doesn't depend on system icu....

Paul Smedley

  • Hero Member
  • *****
  • Posts: 2377
  • Karma: +183/-0
    • View Profile
Re: Qt6 Application Testing
« Reply #770 on: January 19, 2025, 08:08:21 am »
Yep... move unicodenameslist.txt from \scribus\share\scribus\unicodenameslist.txt to \scribus\share
OK found the scribus bug causing this.... I guess maybe win32 doesn't use cmake install for packaging....

https://smedley.id.au/tmp/scribus-1.7.0svn-os2-qt6-6.8.x-20250119.zip fixes some packaging issues....

Remy

  • Hero Member
  • *****
  • Posts: 789
  • Karma: +12/-1
    • View Profile
Re: Qt6 Application Testing
« Reply #771 on: January 19, 2025, 03:55:57 pm »
Info: Since adding qt webengine parameter  " --disable-highres-timer" into my starting process, I could remove my priority setting and have a working dooble with QT6.2.10  (faster youtube start and more stable during video change)
Current parameter I'm using:
"--disable-gpu --ignore-certificate-errors --ignore-ssl-errors --log-level=1 --disable-highres-timer"
And into config.sys
set NSPR_OS2_NO_HIRES_TIMER=1
« Last Edit: January 19, 2025, 04:00:12 pm by Remy »

David McKenna

  • Hero Member
  • *****
  • Posts: 847
  • Karma: +27/-0
    • View Profile
Re: Qt6 Application Testing
« Reply #772 on: January 19, 2025, 04:03:04 pm »
Thanks Paul, this QT 6.2.11 is working with Dooble as well as 6.2.10 now. Scribus is much better too - only thing I see is on the File->Preferences->Plugins page all the plugins are listed like: 'C:/Programs/Scribus6.8/plugins//barecodeg.dll' - there is a double '//' at the end of the path, and 'How to Run' is blank and 'Type' is 'unknown'. Maybe just cosmetic.

Regards,
« Last Edit: January 19, 2025, 04:58:23 pm by David McKenna »

David McKenna

  • Hero Member
  • *****
  • Posts: 847
  • Karma: +27/-0
    • View Profile
Re: Qt6 Application Testing
« Reply #773 on: January 19, 2025, 06:47:25 pm »
 Paul,

 A snowy winter day, so been doing some investigation of QT 6.8.1 to try to understand some of the problems it has. One thing I did is compare the names of DLL's in QT 6.2.11 with the ones in 6.8.1 and found some discrepancies.

 In the \lib directory, there are 3 files missing from 6.8 that are found in 6.2: Qt6NetAu.dll, Qt6PosQk.dll, and QtQmlCoe.dll. Probably their names were changed somehow in the latest build - there is a posquick.dll and Qt6QmCoe.dll in 6.8 I believe are the equivalent for QtPosQk.dll and QtQmlCoe.dll. Can't find an equivalent for Qt6NetAu.dll in 6.8.

 In the \qml directory there are several name changes in 6.8.1 from 6.2.11:
\QtCore\QtQmlCoe.dll in 6.2 is Qt6QmCoe.dll in 6.8
\QtPositioning\Qt6PosQk.dll in 6.2 is posquick.dll in 6.8
\QtQml\qmlplugn.dll in 6.2 is qml.dll in 6.8
\QtQml\Base\ directory does not exist in 6.2 or 6.8, but does exist in 6.6
\QtWebchannel\Webchann.dll in 6.2 is Qt6WebCQ.dll in 6.8

 I would think these kind of changes might be why some apps compiled for 6.2 fail if run in 6.8.

 On top of that, there are some qmldir files missing the 'plugin' or 'optional plugin' directive in the \qml directory in 6.8, and the strange addition of another 'QML' directory there which just doesn't look right to me. Most of the qmldir files with missing directives are in new directories not found in 6.2. They are:

\qml\qml\qmldir - calls out a plugin 'qmlplugn', but no DLL is in the directory.
\qml\test\controls\qmldir - missing a 'plugin' directive
\qml\QtNetwork\qmldir - missing a 'plugin' directive.
\qml\QtQml\qmldir - missing a 'plugin' directive
\qml\QtQuick\Controls\FluentWinUI3\qmldir - missing a 'plugin' directive
\qml\QtQuick\Controls\FluentWinUI3\impl\qmldir - missing a 'plugin' directive

  I tried adding the directives manually, and it seemed to help the examples a little bit, but still get the 'stack overflow' error. The missing DLL in \qml\qml bothers me the most - it seems out of place and I don't have the DLL qmldir wants...

FWIW

Regards,
« Last Edit: January 19, 2025, 09:05:42 pm by David McKenna »

Remy

  • Hero Member
  • *****
  • Posts: 789
  • Karma: +12/-1
    • View Profile
Re: Qt6 Application Testing
« Reply #774 on: January 19, 2025, 11:43:39 pm »
Hi Paul,

It looks like disabling hires timer makes QTwebengine more stable.
Could it be possible a problem exist into C++ about hires timer ?  (under windows, they had to increase precision)

Thanks and Regards
Rémy