Author Topic: Qt6 Development  (Read 544663 times)

KO Myung-Hun

  • Jr. Member
  • **
  • Posts: 80
  • Karma: +11/-0
    • View Profile
Re: Qt6 Development
« Reply #840 on: January 03, 2025, 12:35:11 pm »
Hi/2.


Fill your boots if you want to try this. But our git port sucks on large repositories. I'd rather spend time fixing actual issues with qt6 that restructing the git repo. Building each module separately really isn't that difficult.


What's the sucking point of git on large repos ?

TeLLie

  • Sr. Member
  • ****
  • Posts: 278
  • Karma: +16/-0
    • View Profile
Re: Qt6 Development
« Reply #841 on: January 03, 2025, 01:33:40 pm »
Hi Ko,

For me its hanging the machine when i clone big repos, like de webengine from Qt6 (The RPM version from git)

I have try you're 2.42.0 also, but that also hangs the machine after some time.

I don't have log/popups ...

Best wishes for 2025 :)

TeLLie

  • Sr. Member
  • ****
  • Posts: 278
  • Karma: +16/-0
    • View Profile
Re: Qt6 Development
« Reply #842 on: January 03, 2025, 02:16:04 pm »
I'm confused.... how are you configuring/building qtmultimedia?

Hi Paul,
Have all in the dir  qt6-src
And also seperated folders like yours...

How is your source laid out?
I have a series of separate folders:
Code: [Select]
Directory of  U:\dev\qt6*os2

30/12/24   8:20         <DIR>      570  qt6-base-os2
10/10/24  16:05         <DIR>      124  qt6-charts-os2
10/10/24  16:07         <DIR>      124  qt6-declarative-os2
10/10/24  16:08         <DIR>      124  qt6-multimedia-os2
11/10/24  15:02         <DIR>      124  qt6-networkauth-os2
10/10/24  16:09         <DIR>      124  qt6-positioning-os2
10/10/24  16:10         <DIR>      124  qt6-qt5compat-os2
10/10/24  16:10         <DIR>      124  qt6-shadertools-os2
10/10/24  16:11         <DIR>      124  qt6-svg-os2
10/10/24  16:11         <DIR>      124  qt6-tools-os2
10/10/24  16:12         <DIR>      124  qt6-translations-os2
31/12/24  15:54         <DIR>      124  qt6-webchannel-os2
 1/01/25  11:18         <DIR>      124  qt6-webengine-os2
24/11/24   7:01         <DIR>      124  qt6-websockets-os2

I first build qt6-base-os2 using a configuration similar to yours (btw why are you using unix makefiles and not ninja?)
Yes i build also the base first, i thought Ninja where not working well enough to build qt6.

I will try with Ninja
I get:
-- Configuring done
-- Generating done
-- Build files have been written to: F:/qt6-src/qt6-base-os2/build

[F:\qt6-src\qt6-base-os2\build]cmake --build . --parallel   2>&1  | tee cmake.out
ninja: error: 'src/dbus/-ldbus-1', needed by 'src/dbus/CMakeFiles/DBus_autogen_timestamp_deps', missing and no known rule to make it

I then build each other module by configuring with a script like:
Code: [Select]
dash /qt6-6.2.x/bin/qt-configure-module .. 2>&1 | tee configure.log
« Last Edit: January 03, 2025, 03:29:16 pm by TeLLie »

Dave Yeo

  • Hero Member
  • *****
  • Posts: 5406
  • Karma: +128/-1
    • View Profile
Re: Qt6 Development
« Reply #843 on: January 03, 2025, 05:18:20 pm »
I cloned the official Qt tree, it is much the same as Bitwise's tree with an init-repository script and an initial configure script to call it. Under Linux it was basically the same to build as building Bitwise's fork.
Paul is right about our git fork, it can be a bitch dealing with large repositories as well, the one in netlabs-rel I think it is that didn't handle the sub-repositories very well. Should be able to do things like switch branches and all sub-repositories switch. I had to do each sub-repository individually.

Paul Smedley

  • Hero Member
  • *****
  • Posts: 2531
  • Karma: +195/-0
    • View Profile
Re: Qt6 Development
« Reply #844 on: January 03, 2025, 10:30:41 pm »
Hey there,

Fill your boots if you want to try this. But our git port sucks on large repositories. I'd rather spend time fixing actual issues with qt6 that restructing the git repo. Building each module separately really isn't that difficult.


What's the sucking point of git on large repos ?

As Dave has also mentioned, try cloning https://github.com/psmedley/qt6-webengine-os2.git

The clone will more than likely hang part way through. I've had slightly more success changing acpi.psd to use MAXCPU=1 to get a successful clone.

NB: I haven't tried this with your latest git, just the ones from netlabs and an older port of yours.

Dave Yeo

  • Hero Member
  • *****
  • Posts: 5406
  • Karma: +128/-1
    • View Profile
Re: Qt6 Development
« Reply #845 on: January 04, 2025, 04:13:56 am »
Anyways, it appeared I was building the wrong versions, though successfully. Now building qt6-base-os2 with branch 6.2.x, "cmake install ." fails with,
Code: [Select]
-- The ASM compiler identification is unknown
-- Found assembler: W:/USR/BIN/cc.exe
-- Warning: Did not find file Compiler/-ASM
-- Could NOT find md4c (missing: md4c_DIR)
-- Could NOT find md4c (missing: md4c_DIR)
 
 

Note: When linking against OpenSSL, you can override the default library names through OPENSSL_LIBS. For example: OPENSSL_LIBS='-L/opt/ssl/lib -lssl -lcrypto' ./configure -openssl-linked

-- Could NOT find Qt6OpenGL (missing: Qt6OpenGL_DIR)
CMake Warning at examples/widgets/graphicsview/chip/CMakeLists.txt:21 (find_package):
  Found package configuration file:

    C:/work/qt6-os2/qt6-base-os2/build/lib/cmake/Qt6/Qt6Config.cmake

  but it set Qt6_FOUND to FALSE so package "Qt6" is considered to be NOT
  FOUND.  Reason given by package:

  Failed to find Qt component "OpenGL".

  Expected Config file at
  "C:/work/qt6-os2/qt6-base-os2/build/lib/cmake/Qt6OpenGL/Qt6OpenGLConfig.cmake"
  does NOT exist

 



-- Could NOT find Qt6OpenGL (missing: Qt6OpenGL_DIR)
CMake Warning at build/lib/cmake/Qt6/Qt6Config.cmake:207 (message):
  Failed to find Qt component "OpenGL".

  Expected Config file at
  "C:/work/qt6-os2/qt6-base-os2/build/lib/cmake/Qt6OpenGL/Qt6OpenGLConfig.cmake"
  does NOT exist

Call Stack (most recent call first):
  examples/widgets/painting/shared/use_lib.cmake:10 (find_package)
  examples/widgets/painting/affine/CMakeLists.txt:42 (include)


-- Configuring done
-- Generating done
-- Build files have been written to: C:/work/qt6-os2/qt6-base-os2/build

My configure.cmd,
Code: [Select]
set BEGINLIBPATH=C:\work\qt6-os2\qt6-base-os2\build\lib
dash ../configure -prefix /qt6-6.2.x -release -no-opengl -system-sqlite -openssl-linked -no-pch -- -DQT_BUILD_EXAMPLES=ON -DQT_BUILD_TESTS=OFF 2>&1 | tee configure.log

Paul Smedley

  • Hero Member
  • *****
  • Posts: 2531
  • Karma: +195/-0
    • View Profile
Re: Qt6 Development
« Reply #846 on: January 04, 2025, 04:19:02 am »
That configure looks fine to me, it ends with:
Code: [Select]
-- Configuring done
-- Generating done
-- Build files have been written to: C:/work/qt6-os2/qt6-base-os2/build

Now run:
Code: [Select]
cmake --build . from c:\work\qt6-os2\qt6-base-os2\build

Dave Yeo

  • Hero Member
  • *****
  • Posts: 5406
  • Karma: +128/-1
    • View Profile
Re: Qt6 Development
« Reply #847 on: January 04, 2025, 05:18:27 am »
All ready built, it is install that fails

Paul Smedley

  • Hero Member
  • *****
  • Posts: 2531
  • Karma: +195/-0
    • View Profile
Re: Qt6 Development
« Reply #848 on: January 04, 2025, 05:20:42 am »
All ready built, it is install that fails
Weird - as the log you posted looked like it came from running the cmake configure process - nothing abnormal in it.... Are you sure that was the output of 'cmake --install .'?

KO Myung-Hun

  • Jr. Member
  • **
  • Posts: 80
  • Karma: +11/-0
    • View Profile
Re: Qt6 Development
« Reply #849 on: January 04, 2025, 10:56:00 am »
Hey there,

Fill your boots if you want to try this. But our git port sucks on large repositories. I'd rather spend time fixing actual issues with qt6 that restructing the git repo. Building each module separately really isn't that difficult.


What's the sucking point of git on large repos ?

As Dave has also mentioned, try cloning https://github.com/psmedley/qt6-webengine-os2.git

The clone will more than likely hang part way through. I've had slightly more success changing acpi.psd to use MAXCPU=1 to get a successful clone.

NB: I haven't tried this with your latest git, just the ones from netlabs and an older port of yours.

I tried to clone it. But git crashed silently when [Updating files] is about 61%. Fortunately, popuplog.os2 said git crashed due to SYS3171.

The stack size of git was 1MB, so I incrased the stack size of git to 8MB with

Quote
emxstack -s8192 git.exe

Then, I could clone the repo successfully like:
Quote
F:\lang\work\qt6>git clone https://github.com/psmedley/qt6-webengine-os2.git qt6
w.git
Cloning into 'qt6w.git'...
remote: Enumerating objects: 547695, done.
remote: Counting objects: 100% (779/779), done.
remote: Compressing objects: 100% (615/615), done.
remote: Total 547695 (delta 321), reused 301 (delta 157), pack-reused 546916 (fr
om 1)
Receiving objects: 100% (547695/547695), 896.24 MiB | 4.67 MiB/s, done.
Resolving deltas: 100% (314167/314167), done.
Updating files: 100% (212296/212296), done.

And [git status], [git fsck] said the repo was ok.

Any additional tests are necessary ?

Paul Smedley

  • Hero Member
  • *****
  • Posts: 2531
  • Karma: +195/-0
    • View Profile
Re: Qt6 Development
« Reply #850 on: January 04, 2025, 08:23:28 pm »
Adding a worktree of a branch would be a good test to confirm that it was just the executable stack size.

KO Myung-Hun

  • Jr. Member
  • **
  • Posts: 80
  • Karma: +11/-0
    • View Profile
Re: Qt6 Development
« Reply #851 on: January 05, 2025, 05:21:50 am »
How can I do that?

Paul Smedley

  • Hero Member
  • *****
  • Posts: 2531
  • Karma: +195/-0
    • View Profile
Re: Qt6 Development
« Reply #852 on: January 05, 2025, 05:27:48 am »
from the directory you checked out qt6-webengine-os2:
Code: [Select]
git worktree add ../qt6-webengine-os2-6.5.x 6.5.x to check out the 6.5.x code into a different directory.

I'm also testing this in a VM now with the bww git.exe where I've modified the stack size.
« Last Edit: January 05, 2025, 05:34:12 am by Paul Smedley »

KO Myung-Hun

  • Jr. Member
  • **
  • Posts: 80
  • Karma: +11/-0
    • View Profile
Re: Qt6 Development
« Reply #853 on: January 05, 2025, 07:13:06 am »
I think I have no problems.

Quote
F:\lang\work\qt6\qt6-webengine-os2>git worktree add ../qt6-webengine-os2-6.5.x 6
.5.x
Preparing worktree (new branch '6.5.x')
branch '6.5.x' set up to track 'origin/6.5.x'.
Updating files: 100% (216236/216236), done.
HEAD is now at 690d5480cf More OS2_SHORT_NAME fixes for compatability with rpm c
make

F:\lang\work\qt6\qt6-webengine-os2>cd..

F:\lang\work\qt6>cd qt6-webengine-os2-6.5.x

F:\lang\work\qt6\qt6-webengine-os2-6.5.x>git branch
* 6.5.x
+ main

F:\lang\work\qt6\qt6-webengine-os2-6.5.x>

Paul Smedley

  • Hero Member
  • *****
  • Posts: 2531
  • Karma: +195/-0
    • View Profile
Re: Qt6 Development
« Reply #854 on: January 05, 2025, 07:14:11 am »
That's encouraging! Is this on a machine running in SMP?