Hi, First off you don't necessarily need to compile Qt to work on KDE software development packages for Qt from your distros should be sufficient. Unless you want to work on very specific issues like Qt6 porting or Wayland support for instance.
Our documentation for building from source is at https://community.kde.org/Get_Involved/development but I guess you already have found it. > When I attempt to build kwindowsystem, it comes up with an error that it cannot find Qt5X11Extras package. I did provide a workaround to that by creating a symbolic link named Qt5X11Extras in ~/kde/qt5/lib/cmake to my existing Qt5X11Extras folder found in /usr/lib/x86_64-linux-gnu/cmake, which is version 5.15.3, and the version of Qt that I am building in my KDE development environment is 5.15.5. This seemed to resolve the issue, although I'm not sure if what I did is a valid way of resolving this. Check the qtdir value in your ~/.config/kdesrc-buildrc config file. This kind of linking shenanigans should not be necessary. It might be the case that the rest of KDE software doesn't use your compiled Qt. If the value matches, make sure to restart your build with a clean or a cmake, old paths might have been put in cache. "kdesrc-build --refresh-build kio" for instance > My question regarding this is why the Qt5X11Extras folder was not created in ~/kde/qt5/lib/cmake when Qt5 was built as the first step in building the KDE Development environment, so that this issue would not come up. Any help on resolving that issue would be greatly appreciated. I can't help here. I haven't built Qt5X11Extras in a while. > On to my second more critical error. I am getting build/linker errors when building KIO as follows: [ 51%] Building CXX object src/widgets/CMakeFiles/KF5KIOWidgets.dir/KF5KIOWidgets_autogen/mocs_compilation.cpp.o /usr/bin/ld: /home/rkanagy/kde/qt5/lib/libQt5Core.so.5.15.5: undefined reference to `std::__exception_ptr::exception_ptr::_M_release()@CXXABI_1.3.13' /usr/bin/ld: /home/rkanagy/kde/qt5/lib/libQt5Test.so.5.15.5: undefined reference to `std::condition_variable::wait(std::unique_lock<std::mutex>&)@GLIBCXX_3.4.30' /usr/bin/ld: /home/rkanagy/kde/qt5/lib/libQt5Test.so.5.15.5: undefined reference to `std::__throw_bad_array_new_length()@GLIBCXX_3.4.29' /usr/bin/ld: /home/rkanagy/kde/qt5/lib/libQt5Core.so.5.15.5: undefined reference to `std::__exception_ptr::exception_ptr::_M_addref()@CXXABI_1.3.13' collect2: error: ld returned 1 exit status This points towards an issue with your Qt compilation. It could be that it uses a different glibc version than your kio version being compiled. Le ven. 15 juil. 2022 à 13:53, Ronald Kanagy <ron.kan...@gmail.com> a écrit : > Hello, > > I have run into a couple issues when attempting to build the KDE > development environment using kdesrc-build: > > My linux environment is as follows: > Ubuntu/Kubuntu 22.04 > GNU C++ g++ 11.2.0 (Ubuntu 11.2.0-19ubuntu1) > > I've installed all the Qt5 dependencies that I'm aware of as described at > https://doc.qt.io/qt-5/linux-requirements.html > > When I attempt to build kwindowsystem, it comes up with an error that it > cannot find Qt5X11Extras package. I did provide a workaround to that by > creating a symbolic link named Qt5X11Extras in ~/kde/qt5/lib/cmake to my > existing Qt5X11Extras folder found in /usr/lib/x86_64-linux-gnu/cmake, > which is version 5.15.3, and the version of Qt that I am building in my KDE > development environment is 5.15.5. This seemed to resolve the issue, > although I'm not sure if what I did is a valid way of resolving this. > > My question regarding this is why the Qt5X11Extras folder was not created > in ~/kde/qt5/lib/cmake when Qt5 was build as the first step in building the > KDE Development environment, so that this issue would not come up. Any > help on resolving that issue would be greatly appreciated. > > On to my second more critical errors. I am getting build/linker errors > when building KIO as follows: > > [ 51%] Building CXX object > autotests/CMakeFiles/favicontest.dir/favicontest.cpp.o > [ 51%] Generating ui_checksumswidget.h > [ 51%] Generating ui_kfilepropspluginwidget.h > [ 51%] Generating ui_kpropertiesdesktopadvbase.h > [ 51%] Generating ui_kpropertiesdesktopbase.h > [ 51%] Generating fileundomanager_adaptor.moc > [ 51%] Generating kuiserver_interface.moc > [ 51%] Building CXX object > src/widgets/CMakeFiles/KF5KIOWidgets.dir/KF5KIOWidgets_autogen/mocs_compilation.cpp.o > /usr/bin/ld: /home/rkanagy/kde/qt5/lib/libQt5Core.so.5.15.5: undefined > reference to > `std::__exception_ptr::exception_ptr::_M_release()@CXXABI_1.3.13' > /usr/bin/ld: /home/rkanagy/kde/qt5/lib/libQt5Test.so.5.15.5: undefined > reference to > `std::condition_variable::wait(std::unique_lock<std::mutex>&)@GLIBCXX_3.4.30' > /usr/bin/ld: /home/rkanagy/kde/qt5/lib/libQt5Test.so.5.15.5: undefined > reference to `std::__throw_bad_array_new_length()@GLIBCXX_3.4.29' > /usr/bin/ld: /home/rkanagy/kde/qt5/lib/libQt5Core.so.5.15.5: undefined > reference to > `std::__exception_ptr::exception_ptr::_M_addref()@CXXABI_1.3.13' > collect2: error: ld returned 1 exit status > gmake[2]: *** > [autotests/http/CMakeFiles/httpauthenticationtest.dir/build.make:113: > bin/httpauthenticationtest] Error 1 > gmake[1]: *** [CMakeFiles/Makefile2:7959: > autotests/http/CMakeFiles/httpauthenticationtest.dir/all] Error 2 > gmake[1]: *** Waiting for unfinished jobs.... > [ 51%] Building CXX object > src/widgets/CMakeFiles/KF5KIOWidgets.dir/kacleditwidget.cpp.o > /usr/bin/ld: /home/rkanagy/kde/qt5/lib/libQt5Core.so.5.15.5: undefined > reference to > `std::__exception_ptr::exception_ptr::_M_release()@CXXABI_1.3.13' > /usr/bin/ld: /home/rkanagy/kde/qt5/lib/libQt5Test.so.5.15.5: undefined > reference to > `std::condition_variable::wait(std::unique_lock<std::mutex>&)@GLIBCXX_3.4.30' > /usr/bin/ld: /home/rkanagy/kde/qt5/lib/libQt5Test.so.5.15.5: undefined > reference to `std::__throw_bad_array_new_length()@GLIBCXX_3.4.29' > /usr/bin/ld: /home/rkanagy/kde/qt5/lib/libQt5Core.so.5.15.5: undefined > reference to > `std::__exception_ptr::exception_ptr::_M_addref()@CXXABI_1.3.13' > collect2: error: ld returned 1 exit status > gmake[2]: *** > [autotests/http/CMakeFiles/httpobjecttest.dir/build.make:161: > bin/httpobjecttest] Error 1 > gmake[1]: *** [CMakeFiles/Makefile2:7987: > autotests/http/CMakeFiles/httpobjecttest.dir/all] Error 2 > [ 51%] Building CXX object > src/widgets/CMakeFiles/KF5KIOWidgets.dir/kurlrequesterdialog.cpp.o > [ 51%] Building CXX object > src/widgets/CMakeFiles/KF5KIOWidgets.dir/kurlcombobox.cpp.o > [ 52%] Building CXX object > src/widgets/CMakeFiles/KF5KIOWidgets.dir/kfileitemactions.cpp.o > [ 52%] Building CXX object > src/widgets/CMakeFiles/KF5KIOWidgets.dir/imagefilter.cpp.o > [ 52%] Linking CXX executable ../bin/favicontest > [ 52%] Built target favicontest > > I have provided some context to show where in the process these errors are > occurring. This seems to be a glibc++ problem, maybe I'm not using the > correct version of the GNU C++ compiler, but I'm not sure. > > What do I need to do to resolve these linker errors? > > Any help on these two issues would be greatly appreciated. > > Thanks, > Ron Kanagy > > -- Méven