OS/2, eCS & ArcaOS - Technical > Programming

Qt6 Development

<< < (148/153) > >>

Dave Yeo:
Perhaps something like,

--- Code: ------ a/src/ext/x86/x86inc.asm
+++ b/src/ext/x86/x86inc.asm
@@ -85,7 +85,9 @@
 %endif

 %macro SECTION_RODATA 0-1 16
-    %ifidn __OUTPUT_FORMAT__,win32
+    %ifidn __OUTPUT_FORMAT__,aout
+        SECTION .text
+    %elif __OUTPUT_FORMAT__,win32
         SECTION .rdata align=%1
     %elif WIN64
         SECTION .rdata align=%1

--- End code ---

Code still might need patching for alignment.

Paul Smedley:
Started looking at OS/2  audio support for Qtmultimedia -  created a branch at https://github.com/psmedley/qt6-multimedia-os2/tree/os2audio and have created OS/2 equivalents of the ALSA code and got it compiling. Of course, currently all the audio code is wrapped around #if 0 / #endif and needs to be implemented. Hoping to be able to re-use some of the code from https://github.com/psmedley/qt6-webengine-os2/tree/main/src/3rdparty/chromium/media/audio/os2

Paul Smedley:
You know, compilers/Qt drive me insane at times.

For instance - I built qtdeclarative for Qt 6.5.1 fine a few days ago. Today, I try and rebuild it and get:

--- Code: ---FAILED: lib/Qt6QuDiU.dll lib/Qt6QuickDialogs2Utils_dll.a
: && echo LIBRARY \"Qt6QuDiU\" INITINSTANCE TERMINSTANCE > lib/Qt6QuDiU.dll.def && echo DESCRIPTION \"@#cmake build system:0.0#@##1## 17 Jun 2023 17:54:42\ \ \ \ \ ARCAOS-803C4C0::::0::@@QuickDialogs2Utils\" >> lib/Qt6QuDiU.dll.def && echo DATA MULTIPLE NONSHARED >> lib/Qt6QuDiU.dll.def && c:/usr/local1230/bin/c++.exe -DNDEBUG -O2    -Zomf -Zmap -Zdll -Zlinker DISABLE -Zlinker 1121 -lcx -shared -o lib/Qt6QuDiU.dll  src/quickdialogs/quickdialogsutils/CMakeFiles/QuickDialogs2Utils.dir/QuickDialogs2Utils_autogen/mocs_compilation.cpp.o src/quickdialogs/quickdialogsutils/CMakeFiles/QuickDialogs2Utils.dir/qquickfilenamefilter.cpp.o  U:/qt6-6.5/lib/Qt6Gui_dll.a  U:/qt6-6.5/lib/Qt6Core_dll.a  -lpthread lib/Qt6QuDiU.dll.def && emximp -o lib/Qt6QuickDialogs2Utils_dll.a lib/Qt6QuDiU.dll && :
weakld: C:\var\temp\ldconv_qquickfilenamefilter_cpp_o_157648e3cb21dfe08.obj - error: Duplicate symbol '__ZN20QQuickFileNameFilter16staticMetaObjectE' ('__ZN20QQuickFileNameFilter16staticMetaObjectE').
weakld: C:\var\temp\ldconv_qquickfilenamefilter_cpp_o_157648e3cb21dfe08.obj - error: Symbol previosly defined in this module.
weakld: info: fFlags new 0x0001  fFlags old 0x0001 (PUBLIC).
weakld: info: The symbol is referenced by:
    C:\var\temp\ldconv_mocs_compilation_cpp_o_157648e3cb21d0bd8.obj
emxomfld: weak prelinker failed. (rc=-1)

--- End code ---

If I examine qquickfilenamefilter.cpp.o (exporting all the symbols with emxexp) I only see one instance of __ZN20QQuickFileNameFilter16staticMetaObjectE'

Mentore:

--- Quote from: Paul Smedley on June 18, 2023, 02:20:09 am ---You know, compilers/Qt drive me insane at times.

For instance - I built qtdeclarative for Qt 6.5.1 fine a few days ago. Today, I try and rebuild it and get:

--- Code: ---FAILED: lib/Qt6QuDiU.dll lib/Qt6QuickDialogs2Utils_dll.a
: && echo LIBRARY \"Qt6QuDiU\" INITINSTANCE TERMINSTANCE > lib/Qt6QuDiU.dll.def && echo DESCRIPTION \"@#cmake build system:0.0#@##1## 17 Jun 2023 17:54:42\ \ \ \ \ ARCAOS-803C4C0::::0::@@QuickDialogs2Utils\" >> lib/Qt6QuDiU.dll.def && echo DATA MULTIPLE NONSHARED >> lib/Qt6QuDiU.dll.def && c:/usr/local1230/bin/c++.exe -DNDEBUG -O2    -Zomf -Zmap -Zdll -Zlinker DISABLE -Zlinker 1121 -lcx -shared -o lib/Qt6QuDiU.dll  src/quickdialogs/quickdialogsutils/CMakeFiles/QuickDialogs2Utils.dir/QuickDialogs2Utils_autogen/mocs_compilation.cpp.o src/quickdialogs/quickdialogsutils/CMakeFiles/QuickDialogs2Utils.dir/qquickfilenamefilter.cpp.o  U:/qt6-6.5/lib/Qt6Gui_dll.a  U:/qt6-6.5/lib/Qt6Core_dll.a  -lpthread lib/Qt6QuDiU.dll.def && emximp -o lib/Qt6QuickDialogs2Utils_dll.a lib/Qt6QuDiU.dll && :
weakld: C:\var\temp\ldconv_qquickfilenamefilter_cpp_o_157648e3cb21dfe08.obj - error: Duplicate symbol '__ZN20QQuickFileNameFilter16staticMetaObjectE' ('__ZN20QQuickFileNameFilter16staticMetaObjectE').
weakld: C:\var\temp\ldconv_qquickfilenamefilter_cpp_o_157648e3cb21dfe08.obj - error: Symbol previosly defined in this module.
weakld: info: fFlags new 0x0001  fFlags old 0x0001 (PUBLIC).
weakld: info: The symbol is referenced by:
    C:\var\temp\ldconv_mocs_compilation_cpp_o_157648e3cb21d0bd8.obj
emxomfld: weak prelinker failed. (rc=-1)

--- End code ---

If I examine qquickfilenamefilter.cpp.o (exporting all the symbols with emxexp) I only see one instance of __ZN20QQuickFileNameFilter16staticMetaObjectE'

--- End quote ---

Looks like some "interesting" behaviour of Visual Studio. Here at work everything's ok. Same setup at home, hundreds of errors for missing libs which are perfectly installed. Try and reinstall everything - still errors.
Enough to make one lose his mind - or what remains of it  8) ::)

Mentore

Jochen Schäfer:
So, I wanted to build Qt6, but I'm stuck with ninja. It will build until at the end some python file gets created or so (not at the OS/2 machine ATM), it will hard hang the PMSHELL, such that I have to turn off the machine.
I also had to comment the parameters in getopt for some test.

@Paul: How did you compile ninja?  Did you post some binaries? I didnt see anything.

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version