Why is kdesrc-build unable to complete initial configuration?

I’ve adhered to invent.kde.org/websites/kate-editor-org/-/blob/f12bb8d3352fd91f15f0dcfe4b392e0c0315dc3c/content/build-it.md?plain=1#L41-51:

Summarily, I’ve invoked:

#!/usr/bin/env bash
mkdir -p "$HOME/projects/kde/src" && \
cd "$HOME/projects/kde/src" && \
git clone https://invent.kde.org/sdk/kdesrc-build.git && \
ln -s "$HOME/projects/kde/src/kdesrc-build/kdesrc-build" "$HOME/bin"

This succeeded:

RokeJulianLockhart@Beedell:~/projects/kde$ mkdir -p ~/projects/kde/src
cd ~/projects/kde/src
git clone https://invent.kde.org/sdk/kdesrc-build.git
Cloning into 'kdesrc-build'...
remote: Enumerating objects: 19632, done.
remote: Counting objects: 100% (5672/5672), done.
remote: Compressing objects: 100% (1821/1821), done.
remote: Total 19632 (delta 5454), reused 3851 (delta 3851), pack-reused 13960 (from 1)
Receiving objects: 100% (19632/19632), 5.26 MiB | 3.22 MiB/s, done.
Resolving deltas: 100% (13273/13273), done.
RokeJulianLockhart@Beedell:~/projects/kde/src$ ln -s ~/projects/kde/src/kdesrc-build/kdesrc-build ~/bin

However, it fails to configure:

RokeJulianLockhart@Beedell:~/projects/kde/src/kdesrc-build$ ./kdesrc-build --initial-setup
Name "FindBin::RealBin" used only once: possible typo at ./kdesrc-build line 57.
* kdesrc-build was unable to load initial setup support for some reason.
* Did you remember to install the base dependencies for kdesrc-build?
* Ensure you have run --install-distro-packages-perl (included in --initial-setup) before you run further steps.
* https://community.kde.org/Get_Involved/development/Set_up_a_development_environment#Install_basic_tools

Can't locate IPC/Cmd.pm in @INC (you may need to install the IPC::Cmd module) (@INC entries checked: /usr/local/lib64/perl5/5.40 /usr/local/share/perl5/5.40 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 /home/RokeJulianLockhart/projects/kde/src/kdesrc-build/modules) at /home/RokeJulianLockhart/projects/kde/src/kdesrc-build/modules/ksb/Version.pm line 16.
BEGIN failed--compilation aborted at /home/RokeJulianLockhart/projects/kde/src/kdesrc-build/modules/ksb/Version.pm line 16.
Compilation failed in require at /home/RokeJulianLockhart/projects/kde/src/kdesrc-build/modules/ksb/Util.pm line 28.
BEGIN failed--compilation aborted at /home/RokeJulianLockhart/projects/kde/src/kdesrc-build/modules/ksb/Util.pm line 28.
Compilation failed in require at /home/RokeJulianLockhart/projects/kde/src/kdesrc-build/modules/ksb/FirstRun.pm line 21.
BEGIN failed--compilation aborted at /home/RokeJulianLockhart/projects/kde/src/kdesrc-build/modules/ksb/FirstRun.pm line 21.
Compilation failed in require at ./kdesrc-build line 114.


You could:
 File a bug https://bugs.kde.org/enter_bug.cgi?product=kdesrc-build
 Ask for help on irc.libera.chat in the #kde channel

Environment

  1. #!/usr/bin/env bash
    xdg-open "$HOME/.config/kdesrc-buildrc"
    
    global
        # use the latest KF6 and Qt6-based software.
        branch-group kf6-qt6
    
        # use ninja for faster incremental rebuilding, turn off some Qt 5 things to have less dependencies
        cmake-options -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_CXX_FLAGS="-fno-omit-frame-pointer" -DECM_ENABLE_SANITIZERS="address;leak" -DCMAKE_BUILD_TYPE=RelWithDebInfo
    
        # clangd tooling
        compile-commands-export yes
        compile-commands-linking yes
    
        # flat structure
        directory-layout flat
    
        # Install directory for KDE software
        install-dir ~/projects/kde/usr
    
        # Directory for downloaded source code
        source-dir ~/projects/kde/src
    
        # Directory to build KDE into before installing
        # relative to source-dir by default
        build-dir ~/projects/kde/build
    end global
    
    include ${module-definitions-dir}/kf6-qt6.ksb
    
  2. #!/usr/bin/env bash
    tree "$HOME/projects/kde/src/kdesrc-build"
    
    .
    ├── CMakeLists.txt
    ├── data
    │   ├── kde-env-master.sh.in
    │   ├── kdesrc-buildrc.in
    │   ├── kdesrc-run-completions.sh
    │   ├── perl-dependencies
    │   │   ├── alpine.ini
    │   │   ├── arch.ini
    │   │   ├── debian.ini
    │   │   ├── fedora.ini
    │   │   ├── freebsd.ini
    │   │   ├── gentoo.ini
    │   │   ├── mageia.ini
    │   │   ├── openbsd.ini
    │   │   └── opensuse.ini
    │   ├── vscode
    │   │   ├── c_cpp_properties.json.in
    │   │   ├── extensions.json.in
    │   │   ├── launch.json.in
    │   │   └── settings.json.in
    │   └── xsession.sh.in
    ├── doc
    │   ├── advanced-features.docbook
    │   ├── appendix-modules.docbook
    │   ├── appendix-profile.docbook
    │   ├── basic-features.docbook
    │   ├── build-docs
    │   ├── building-and-troubleshooting.docbook
    │   ├── building-specific-modules.docbook
    │   ├── CMakeLists.txt
    │   ├── cmdline.docbook
    │   ├── configure-data.docbook
    │   ├── conf-options-table.docbook
    │   ├── credits-and-license.docbook
    │   ├── developer-features.docbook
    │   ├── environment.docbook
    │   ├── features.docbook
    │   ├── getting-started.docbook
    │   ├── index.docbook
    │   ├── introduction.docbook
    │   ├── intro-toc.docbook
    │   ├── kde-cmake.docbook
    │   ├── kde-modules-and-selection.docbook
    │   ├── kdesrc-build.desktop
    │   ├── kdesrc-build-logging.docbook
    │   ├── kdesrc-buildrc.docbook
    │   ├── man-kdesrc-build.1.docbook
    │   ├── other-features.docbook
    │   ├── quick-start-conclusion.docbook
    │   ├── README.md
    │   ├── source-reference
    │   │   ├── index.md
    │   │   ├── Internals.md
    │   │   ├── IPC-notes.md
    │   │   └── Module.md
    │   ├── supported-cmdline-params.docbook
    │   ├── supported-envvars.docbook
    │   └── using-kdesrc-build.docbook
    ├── kdesrc-build
    ├── LICENSES
    │   ├── Artistic-2.0.txt
    │   ├── BSD-2-Clause.txt
    │   ├── CC0-1.0.txt
    │   ├── CC-BY-4.0.txt
    │   ├── FSFAP.txt
    │   ├── GFDL-1.2-no-invariants-or-later.txt
    │   └── GPL-2.0-or-later.txt
    ├── logo.png
    ├── modules
    │   ├── ksb
    │   │   ├── Application.pm
    │   │   ├── BuildContext.pm
    │   │   ├── BuildException.pm
    │   │   ├── BuildSystem
    │   │   │   ├── Autotools.pm
    │   │   │   ├── CMakeBootstrap.pm
    │   │   │   ├── KDECMake.pm
    │   │   │   ├── Meson.pm
    │   │   │   ├── QMake6.pm
    │   │   │   ├── QMake.pm
    │   │   │   ├── Qt4.pm
    │   │   │   ├── Qt5.pm
    │   │   │   └── Qt6.pm
    │   │   ├── BuildSystem.pm
    │   │   ├── Cmdline.pm
    │   │   ├── DBus.pm
    │   │   ├── DebugOrderHints.pm
    │   │   ├── Debug.pm
    │   │   ├── DependencyResolver.pm
    │   │   ├── FirstRun.pm
    │   │   ├── IPC
    │   │   │   ├── Null.pm
    │   │   │   └── Pipe.pm
    │   │   ├── IPC.pm
    │   │   ├── KDEProjectsReader.pm
    │   │   ├── Module
    │   │   │   └── BranchGroupResolver.pm
    │   │   ├── Module.pm
    │   │   ├── ModuleResolver.pm
    │   │   ├── ModuleSet
    │   │   │   ├── KDEProjects.pm
    │   │   │   ├── Null.pm
    │   │   │   └── Qt.pm
    │   │   ├── ModuleSet.pm
    │   │   ├── OptionsBase.pm
    │   │   ├── OSSupport.pm
    │   │   ├── PhaseList.pm
    │   │   ├── RecursiveFH.pm
    │   │   ├── StartProgram.pm
    │   │   ├── StatusView.pm
    │   │   ├── TaskManager.pm
    │   │   ├── Updater
    │   │   │   ├── Git.pm
    │   │   │   ├── KDEProjectMetadata.pm
    │   │   │   ├── KDEProject.pm
    │   │   │   └── Qt5.pm
    │   │   ├── Updater.pm
    │   │   ├── Util
    │   │   │   └── LoggedSubprocess.pm
    │   │   ├── Util.pm
    │   │   └── Version.pm
    │   ├── ksb.pm
    │   ├── Mojo
    │   │   ├── Asset
    │   │   │   ├── File.pm
    │   │   │   └── Memory.pm
    │   │   ├── Asset.pm
    │   │   ├── Base.pm
    │   │   ├── ByteStream.pm
    │   │   ├── Cache.pm
    │   │   ├── Collection.pm
    │   │   ├── Content
    │   │   │   ├── MultiPart.pm
    │   │   │   └── Single.pm
    │   │   ├── Content.pm
    │   │   ├── Cookie
    │   │   │   ├── Request.pm
    │   │   │   └── Response.pm
    │   │   ├── Cookie.pm
    │   │   ├── Date.pm
    │   │   ├── DOM
    │   │   │   ├── CSS.pm
    │   │   │   └── HTML.pm
    │   │   ├── DOM.pm
    │   │   ├── DynamicMethods.pm
    │   │   ├── EventEmitter.pm
    │   │   ├── Exception.pm
    │   │   ├── File.pm
    │   │   ├── Headers.pm
    │   │   ├── HelloWorld.pm
    │   │   ├── Home.pm
    │   │   ├── IOLoop
    │   │   │   ├── Client.pm
    │   │   │   ├── resources
    │   │   │   │   ├── server.crt
    │   │   │   │   └── server.key
    │   │   │   ├── Server.pm
    │   │   │   ├── Stream.pm
    │   │   │   ├── Subprocess.pm
    │   │   │   └── TLS.pm
    │   │   ├── IOLoop.pm
    │   │   ├── JSON
    │   │   │   └── Pointer.pm
    │   │   ├── JSON.pm
    │   │   ├── Loader.pm
    │   │   ├── Log.pm
    │   │   ├── Message
    │   │   │   ├── Request.pm
    │   │   │   └── Response.pm
    │   │   ├── Message.pm
    │   │   ├── Parameters.pm
    │   │   ├── Path.pm
    │   │   ├── Promise.pm
    │   │   ├── Reactor
    │   │   │   ├── EV.pm
    │   │   │   └── Poll.pm
    │   │   ├── Reactor.pm
    │   │   ├── resources
    │   │   │   └── html_entities.txt
    │   │   ├── Server
    │   │   │   ├── CGI.pm
    │   │   │   ├── Daemon.pm
    │   │   │   ├── Hypnotoad.pm
    │   │   │   ├── Morbo
    │   │   │   │   ├── Backend
    │   │   │   │   │   └── Poll.pm
    │   │   │   │   └── Backend.pm
    │   │   │   ├── Morbo.pm
    │   │   │   ├── Prefork.pm
    │   │   │   └── PSGI.pm
    │   │   ├── Server.pm
    │   │   ├── Template.pm
    │   │   ├── Transaction
    │   │   │   ├── HTTP.pm
    │   │   │   └── WebSocket.pm
    │   │   ├── Transaction.pm
    │   │   ├── Upload.pm
    │   │   ├── URL.pm
    │   │   ├── UserAgent
    │   │   │   ├── CookieJar.pm
    │   │   │   ├── Proxy.pm
    │   │   │   ├── Server.pm
    │   │   │   └── Transactor.pm
    │   │   ├── UserAgent.pm
    │   │   ├── Util.pm
    │   │   └── WebSocket.pm
    │   └── Mojo.pm
    ├── org.kde.kdesrc-build.metainfo.xml
    ├── po
    │   ├── ca
    │   │   └── docs
    │   │       └── kdesrc-build
    │   │           ├── advanced-features.docbook
    │   │           ├── appendix-modules.docbook
    │   │           ├── appendix-profile.docbook
    │   │           ├── basic-features.docbook
    │   │           ├── building-and-troubleshooting.docbook
    │   │           ├── building-specific-modules.docbook
    │   │           ├── cmdline.docbook
    │   │           ├── configure-data.docbook
    │   │           ├── conf-options-table.docbook
    │   │           ├── credits-and-license.docbook
    │   │           ├── developer-features.docbook
    │   │           ├── environment.docbook
    │   │           ├── features.docbook
    │   │           ├── getting-started.docbook
    │   │           ├── index.docbook
    │   │           ├── introduction.docbook
    │   │           ├── intro-toc.docbook
    │   │           ├── kde-cmake.docbook
    │   │           ├── kde-modules-and-selection.docbook
    │   │           ├── kdesrc-build-logging.docbook
    │   │           ├── kdesrc-buildrc.docbook
    │   │           ├── man-kdesrc-build.1.docbook
    │   │           ├── man-kdesrc-build-setup.1.docbook
    │   │           ├── other-features.docbook
    │   │           ├── quick-start-conclusion.docbook
    │   │           ├── supported-cmdline-params.docbook
    │   │           ├── supported-envvars.docbook
    │   │           └── using-kdesrc-build.docbook
    │   ├── de
    │   │   └── docs
    │   │       └── kdesrc-build
    │   │           ├── index.docbook
    │   │           ├── man-kdesrc-build.1.docbook
    │   │           └── man-kdesrc-build-setup.1.docbook
    │   ├── es
    │   │   └── docs
    │   │       └── kdesrc-build
    │   │           ├── index.docbook
    │   │           └── man-kdesrc-build-setup.1.docbook
    │   ├── it
    │   │   └── docs
    │   │       └── kdesrc-build
    │   │           ├── advanced-features.docbook
    │   │           ├── appendix-modules.docbook
    │   │           ├── appendix-profile.docbook
    │   │           ├── basic-features.docbook
    │   │           ├── building-and-troubleshooting.docbook
    │   │           ├── building-specific-modules.docbook
    │   │           ├── cmdline.docbook
    │   │           ├── configure-data.docbook
    │   │           ├── conf-options-table.docbook
    │   │           ├── credits-and-license.docbook
    │   │           ├── developer-features.docbook
    │   │           ├── environment.docbook
    │   │           ├── features.docbook
    │   │           ├── getting-started.docbook
    │   │           ├── index.docbook
    │   │           ├── introduction.docbook
    │   │           ├── intro-toc.docbook
    │   │           ├── kde-cmake.docbook
    │   │           ├── kde-modules-and-selection.docbook
    │   │           ├── kdesrc-build-logging.docbook
    │   │           ├── kdesrc-buildrc.docbook
    │   │           ├── man-kdesrc-build.1.docbook
    │   │           ├── man-kdesrc-build-setup.1.docbook
    │   │           ├── other-features.docbook
    │   │           ├── quick-start-conclusion.docbook
    │   │           ├── supported-cmdline-params.docbook
    │   │           ├── supported-envvars.docbook
    │   │           └── using-kdesrc-build.docbook
    │   ├── nl
    │   │   └── docs
    │   │       └── kdesrc-build
    │   │           ├── advanced-features.docbook
    │   │           ├── appendix-modules.docbook
    │   │           ├── appendix-profile.docbook
    │   │           ├── basic-features.docbook
    │   │           ├── building-and-troubleshooting.docbook
    │   │           ├── building-specific-modules.docbook
    │   │           ├── cmdline.docbook
    │   │           ├── configure-data.docbook
    │   │           ├── conf-options-table.docbook
    │   │           ├── credits-and-license.docbook
    │   │           ├── developer-features.docbook
    │   │           ├── environment.docbook
    │   │           ├── features.docbook
    │   │           ├── getting-started.docbook
    │   │           ├── index.docbook
    │   │           ├── introduction.docbook
    │   │           ├── intro-toc.docbook
    │   │           ├── kde-cmake.docbook
    │   │           ├── kde-modules-and-selection.docbook
    │   │           ├── kdesrc-build-logging.docbook
    │   │           ├── kdesrc-buildrc.docbook
    │   │           ├── man-kdesrc-build.1.docbook
    │   │           ├── man-kdesrc-build-setup.1.docbook
    │   │           ├── other-features.docbook
    │   │           ├── quick-start-conclusion.docbook
    │   │           ├── supported-cmdline-params.docbook
    │   │           ├── supported-envvars.docbook
    │   │           └── using-kdesrc-build.docbook
    │   ├── pt
    │   │   └── docs
    │   │       └── kdesrc-build
    │   │           ├── index.docbook
    │   │           ├── man-kdesrc-build.1.docbook
    │   │           └── man-kdesrc-build-setup.1.docbook
    │   ├── pt_BR
    │   │   └── docs
    │   │       └── kdesrc-build
    │   │           ├── index.docbook
    │   │           ├── man-kdesrc-build.1.docbook
    │   │           └── man-kdesrc-build-setup.1.docbook
    │   ├── sv
    │   │   └── docs
    │   │       └── kdesrc-build
    │   │           ├── advanced-features.docbook
    │   │           ├── appendix-modules.docbook
    │   │           ├── appendix-profile.docbook
    │   │           ├── basic-features.docbook
    │   │           ├── building-and-troubleshooting.docbook
    │   │           ├── building-specific-modules.docbook
    │   │           ├── cmdline.docbook
    │   │           ├── configure-data.docbook
    │   │           ├── conf-options-table.docbook
    │   │           ├── credits-and-license.docbook
    │   │           ├── developer-features.docbook
    │   │           ├── environment.docbook
    │   │           ├── features.docbook
    │   │           ├── getting-started.docbook
    │   │           ├── index.docbook
    │   │           ├── introduction.docbook
    │   │           ├── intro-toc.docbook
    │   │           ├── kde-cmake.docbook
    │   │           ├── kde-modules-and-selection.docbook
    │   │           ├── kdesrc-build-logging.docbook
    │   │           ├── kdesrc-buildrc.docbook
    │   │           ├── man-kdesrc-build.1.docbook
    │   │           ├── man-kdesrc-build-setup.1.docbook
    │   │           ├── other-features.docbook
    │   │           ├── quick-start-conclusion.docbook
    │   │           ├── supported-cmdline-params.docbook
    │   │           ├── supported-envvars.docbook
    │   │           └── using-kdesrc-build.docbook
    │   ├── tr
    │   │   └── docs
    │   │       └── kdesrc-build
    │   │           ├── advanced-features.docbook
    │   │           ├── appendix-modules.docbook
    │   │           ├── appendix-profile.docbook
    │   │           ├── basic-features.docbook
    │   │           ├── building-and-troubleshooting.docbook
    │   │           ├── building-specific-modules.docbook
    │   │           ├── cmdline.docbook
    │   │           ├── configure-data.docbook
    │   │           ├── conf-options-table.docbook
    │   │           ├── credits-and-license.docbook
    │   │           ├── developer-features.docbook
    │   │           ├── environment.docbook
    │   │           ├── features.docbook
    │   │           ├── getting-started.docbook
    │   │           ├── introduction.docbook
    │   │           ├── intro-toc.docbook
    │   │           ├── kde-cmake.docbook
    │   │           ├── kde-modules-and-selection.docbook
    │   │           ├── kdesrc-build-logging.docbook
    │   │           ├── kdesrc-buildrc.docbook
    │   │           ├── other-features.docbook
    │   │           ├── quick-start-conclusion.docbook
    │   │           ├── supported-cmdline-params.docbook
    │   │           ├── supported-envvars.docbook
    │   │           └── using-kdesrc-build.docbook
    │   └── uk
    │       └── docs
    │           └── kdesrc-build
    │               ├── advanced-features.docbook
    │               ├── appendix-modules.docbook
    │               ├── appendix-profile.docbook
    │               ├── basic-features.docbook
    │               ├── building-and-troubleshooting.docbook
    │               ├── building-specific-modules.docbook
    │               ├── cmdline.docbook
    │               ├── configure-data.docbook
    │               ├── conf-options-table.docbook
    │               ├── credits-and-license.docbook
    │               ├── developer-features.docbook
    │               ├── environment.docbook
    │               ├── features.docbook
    │               ├── getting-started.docbook
    │               ├── index.docbook
    │               ├── introduction.docbook
    │               ├── intro-toc.docbook
    │               ├── kde-cmake.docbook
    │               ├── kde-modules-and-selection.docbook
    │               ├── kdesrc-build-logging.docbook
    │               ├── kdesrc-buildrc.docbook
    │               ├── man-kdesrc-build.1.docbook
    │               ├── man-kdesrc-build-setup.1.docbook
    │               ├── other-features.docbook
    │               ├── quick-start-conclusion.docbook
    │               ├── supported-cmdline-params.docbook
    │               ├── supported-envvars.docbook
    │               └── using-kdesrc-build.docbook
    ├── README.md
    ├── scripts
    │   └── import-mojolicious-snapshot
    ├── t
    │   ├── integration
    │   │   ├── boilerplate.t
    │   │   ├── branch-time-based.t
    │   │   ├── bug-394497-ignore-dep-module.t
    │   │   ├── bug-395627-keep-cmake-prefix.t
    │   │   ├── bug-402509-masked-cmdline-opts.t
    │   │   ├── cmdline-no-include-dependencies.t
    │   │   ├── custom-build-command-work.t
    │   │   ├── fixtures
    │   │   │   ├── branch-time-based
    │   │   │   │   └── kdesrc-buildrc
    │   │   │   ├── bug-395627
    │   │   │   │   └── kdesrc-buildrc
    │   │   │   ├── kde-projects
    │   │   │   │   └── kdesrc-buildrc-with-deps
    │   │   │   ├── os-release
    │   │   │   └── sample-rc
    │   │   │       ├── kdesrc-buildrc
    │   │   │       └── kdesrc-buildrc-with-deps
    │   │   ├── install-and-run.t
    │   │   ├── issue-64-cmdline-opt-override.t
    │   │   ├── kde-projects-basics.t
    │   │   ├── load-all-ksb-modules.t
    │   │   ├── os-release-basics.t
    │   │   ├── read-module-options.t
    │   │   ├── set-module-option-value.t
    │   │   └── submodule-functions.t
    │   ├── intellij_conf_run_test_under_debugger.png
    │   ├── README.md
    │   └── unit
    │       ├── build-environment
    │       │   └── platform-env-prepend.t
    │       ├── build-system
    │       │   ├── empty-num-cores.t
    │       │   └── logged-subprocess.t
    │       ├── debug-hints
    │       │   └── compare-debug-order.t
    │       ├── dependency-resolver
    │       │   ├── compare-build-order.t
    │       │   ├── copy-up-dependencies.t
    │       │   ├── detect-cycles.t
    │       │   ├── get-dependency-path.t
    │       │   ├── run-dependency-vote.t
    │       │   └── sort-build-order.t
    │       └── util
    │           ├── lndir.t
    │           └── prune_under_directory.t
    └── vim
        ├── ftdetect
        │   └── kdesrc-buildrc.vim
        ├── README
        └── syntax
            └── kdesrc-buildrc.vim
    
    79 directories, 394 files
    

This is saying that you have not installed perl modules needed by the code you are running isn’t it?

Is there a README.* that explains the build dependencies?

You might find clues to what you will need to install in the Fedora .spec file for the SRC RPM that corresponds to this code.

@barryascott, the documentation and error are recursive:

Install needed dependencies (optional)

kdesrc-build provides some initial setup mode to install the needed packages for several common distributions to start developing.
This is helpful if you are not sure if all needed development packages are installed on your system and you don’t want to take care of this yourself manually.
As this will try to install packages for your distribution, this step will require administrator rights for the package installation.
To do that, just trigger:

kdesrc-build --initial-setup

In order to install the required dependencies, it recommends that I invoke the command which, itself, lacks dependencies. I am tempted to report this to Bugzilla.

It’s not installed from an RPM. It’s installed from a BaSH script.

The absent dependencies were all perl packages: [1]

  1. #!/usr/bin/env sh
    sudo dnf5 install --refresh \
        perl-IPC-Cmd  \
        perl-JSON-PP && \
    kdesrc-build --initial-setup
    
  2. RokeJulianLockhart@Beedell:~/projects/kde/src/kdesrc-build$ ./kdesrc-build --initial-setup
    Name "FindBin::RealBin" used only once: possible typo at ./kdesrc-build line 57.
    * kdesrc-build was unable to load initial setup support for some reason.
    * Did you remember to install the base dependencies for kdesrc-build?
    * Ensure you have run --install-distro-packages-perl (included in --initial-setup) before you run further steps.
    * https://community.kde.org/Get_Involved/development/Set_up_a_development_environment#Install_basic_tools
    
    Can't locate JSON/PP.pm in @INC (you may need to install the JSON::PP module) (@INC entries checked: /usr/local/lib64/perl5/5.40 /usr/local/share/perl5/5.40 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 /home/RokeJulianLockhart/projects/kde/src/kdesrc-build/modules) at /home/RokeJulianLockhart/projects/kde/src/kdesrc-build/modules/Mojo/JSON.pm line 6.
    BEGIN failed--compilation aborted at /home/RokeJulianLockhart/projects/kde/src/kdesrc-build/modules/Mojo/JSON.pm line 6.
    Compilation failed in require at /home/RokeJulianLockhart/projects/kde/src/kdesrc-build/modules/Mojo/IOLoop/Subprocess.pm line 7.
    BEGIN failed--compilation aborted at /home/RokeJulianLockhart/projects/kde/src/kdesrc-build/modules/Mojo/IOLoop/Subprocess.pm line 7.
    Compilation failed in require at /home/RokeJulianLockhart/projects/kde/src/kdesrc-build/modules/ksb/Util.pm line 31.
    BEGIN failed--compilation aborted at /home/RokeJulianLockhart/projects/kde/src/kdesrc-build/modules/ksb/Util.pm line 31.
    Compilation failed in require at /home/RokeJulianLockhart/projects/kde/src/kdesrc-build/modules/ksb/FirstRun.pm line 21.
    BEGIN failed--compilation aborted at /home/RokeJulianLockhart/projects/kde/src/kdesrc-build/modules/ksb/FirstRun.pm line 21.
    Compilation failed in require at ./kdesrc-build line 114.
    
    
    You could:
     File a bug https://bugs.kde.org/enter_bug.cgi?product=kdesrc-build
     Ask for help on irc.libera.chat in the #kde channel
    
    RokeJulianLockhart@Beedell:~/projects/kde/src/kdesrc-build$ sudo dnf5 install perl-JSON-PP
    [sudo] password for RokeJulianLockhart: 
    Updating and loading repositories:
    Repositories loaded.
    Package                                                                                      Arch                Version                                                                                      Repository                                                 Size
    Installing:
     perl-JSON-PP                                                                                noarch              1:4.16-513.fc42                                                                              fedora                                                141.8 KiB
    
    Transaction Summary:
     Installing:         1 package
    
    Total size of inbound packages is 66 KiB. Need to download 66 KiB.
    After this operation, 142 KiB extra will be used (install 142 KiB, remove 0 B).
    Is this ok [y/N]: y
    [1/1] perl-JSON-PP-1:4.16-513.fc42.noarch                                                                                                                                                                                            100% | 412.2 KiB/s |  65.5 KiB |  00m00s
    -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    [1/1] Total                                                                                                                                                                                                                          100% | 247.3 KiB/s |  65.5 KiB |  00m00s
    Running transaction
    [1/3] Verify package files                                                                                                                                                                                                           100% |   1.0 KiB/s |   1.0   B |  00m00s
    [2/3] Prepare transaction                                                                                                                                                                                                            100% |   3.0   B/s |   1.0   B |  00m00s
    [3/3] Installing perl-JSON-PP-1:4.16-513.fc42.noarch                                                                                                                                                                                 100% | 351.0 KiB/s | 143.6 KiB |  00m00s
    Complete!
    RokeJulianLockhart@Beedell:~/projects/kde/src/kdesrc-build$ ./kdesrc-build --initial-setup
    Name "FindBin::RealBin" used only once: possible typo at ./kdesrc-build line 57.
    === install-distro-packages-perl ===
     - Installing system packages for fedora...
        Installing packages for fedora/42
        Using installer for fedora
     * Running 'sudo dnf -y install perl(Digest::SHA) perl(FindBin) perl(IO::Compress::Gzip) perl(IO::Socket::SSL) perl(IPC::Cmd) perl(JSON::PP) perl(JSON::XS) perl(URI) perl(YAML::LibYAML) perl(experimental)'
    Updating and loading repositories:
    Repositories loaded.
    Package "perl-Digest-SHA-1:6.04-513.fc42.x86_64" is already installed.
    Package "perl-IO-Compress-2.213-3.fc42.noarch" is already installed.
    Package "perl-IO-Socket-SSL-2.089-2.fc42.noarch" is already installed.
    Package "perl-IPC-Cmd-2:1.04-513.fc42.noarch" is already installed.
    Package "perl-JSON-PP-1:4.16-513.fc42.noarch" is already installed.
    Package "perl-URI-5.31-2.fc42.noarch" is already installed.
    
    Package                                                                                      Arch                Version                                                                                      Repository                                                 Size
    Installing:
     perl-FindBin                                                                                noarch              1.54-518.fc42                                                                                updates                                                 6.7 KiB
     perl-JSON-XS                                                                                x86_64              1:4.03-16.fc42                                                                               fedora                                                266.2 KiB
     perl-YAML-LibYAML                                                                           x86_64              1:0.903.0-1.fc42                                                                             fedora                                                100.4 KiB
     perl-experimental                                                                           noarch              0.034-2.fc42                                                                                 fedora                                                 42.4 KiB
    Installing dependencies:
     perl-Types-Serialiser                                                                       noarch              1.01-13.fc42                                                                                 fedora                                                 22.9 KiB
     perl-common-sense                                                                           x86_64              3.7.5-19.fc42                                                                                fedora                                                 47.0 KiB
    
    Transaction Summary:
     Installing:         6 packages
    
    Total size of inbound packages is 251 KiB. Need to download 251 KiB.
    After this operation, 486 KiB extra will be used (install 486 KiB, remove 0 B).
    [1/6] perl-experimental-0:0.034-2.fc42.noarch                                                                                                                                                                                        100% | 211.0 KiB/s |  27.0 KiB |  00m00s
    [2/6] perl-YAML-LibYAML-1:0.903.0-1.fc42.x86_64                                                                                                                                                                                      100% | 407.6 KiB/s |  53.0 KiB |  00m00s
    [3/6] perl-Types-Serialiser-0:1.01-13.fc42.noarch                                                                                                                                                                                    100% | 524.0 KiB/s |  19.4 KiB |  00m00s
    [4/6] perl-JSON-XS-1:4.03-16.fc42.x86_64                                                                                                                                                                                             100% | 645.7 KiB/s | 107.8 KiB |  00m00s
    [5/6] perl-common-sense-0:3.7.5-19.fc42.x86_64                                                                                                                                                                                       100% | 708.5 KiB/s |  29.8 KiB |  00m00s
    [6/6] perl-FindBin-0:1.54-518.fc42.noarch                                                                                                                                                                                            100% | 477.2 KiB/s |  14.3 KiB |  00m00s
    -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    [6/6] Total                                                                                                                                                                                                                          100% | 327.6 KiB/s | 251.3 KiB |  00m01s
    Running transaction
    [1/8] Verify package files                                                                                                                                                                                                           100% |   2.9 KiB/s |   6.0   B |  00m00s
    [2/8] Prepare transaction                                                                                                                                                                                                            100% |  12.0   B/s |   6.0   B |  00m00s
    [3/8] Installing perl-common-sense-0:3.7.5-19.fc42.x86_64                                                                                                                                                                            100% |   2.8 MiB/s |  48.9 KiB |  00m00s
    [4/8] Installing perl-Types-Serialiser-0:1.01-13.fc42.noarch                                                                                                                                                                         100% |   4.8 MiB/s |  24.8 KiB |  00m00s
    [5/8] Installing perl-JSON-XS-1:4.03-16.fc42.x86_64                                                                                                                                                                                  100% |  16.4 MiB/s | 269.4 KiB |  00m00s
    [6/8] Installing perl-FindBin-0:1.54-518.fc42.noarch                                                                                                                                                                                 100% |   3.5 MiB/s |   7.1 KiB |  00m00s
    [7/8] Installing perl-experimental-0:0.034-2.fc42.noarch                                                                                                                                                                             100% |  21.4 MiB/s |  43.9 KiB |  00m00s
    [8/8] Installing perl-YAML-LibYAML-1:0.903.0-1.fc42.x86_64                                                                                                                                                                           100% | 212.2 KiB/s | 104.0 KiB |  00m00s
    Complete!
     * Looks like the necessary packages were successfully installed!
    === install-distro-packages ===
    Cloning sysadmin-repo-metadata
     - Installing system packages for fedora...
        Installing packages for fedora/42
        Using installer for fedora
     * Running 'sudo dnf -y install LibRaw-devel PackageKit SDL2-devel aha appstream-qt-devel bison boost-devel bzip2 cfitsio-devel chmlib-devel cmake cmake(kColorPicker-Qt6) cmake(KDcrawQt6) cmake(KF6Baloo) cmake(KF6Crash) cmake(KF6DocTools) cmake(KF6GuiAddons) cmake(KF6I18n) cmake(KF6IconThemes) cmake(KF6KIO) cmake(KF6ItemModels) cmake(KF6Notifications) cmake(KF6Parts) cmake(KF6Purpose) cmake(kImageAnnotator-Qt6) cmake(Phonon4Qt6) cmake(PlasmaActivities) cyrus-sasl-devel dbusmenu-qt5-devel djvulibre-devel docbook-style-xsl docbook-utils doxygen ebook-tools-devel eigen3-devel erfa-devel exiv2-devel flatpak-devel flex fuse-devel fuse3-devel gcc gcc-c++ gettext gettext-devel giflib-devel git glew-devel gobject-introspection-devel gperf gpgmepp-devel gsl-devel gstreamer1-plugins-base-devel hunspell-devel ibus-devel intltool itstool json-c-devel kcolorpicker-devel kdsoap-devel kf5-kdnssd-devel kf5-kplotting-devel kf5-libkdcraw-devel kimageannotator-devel libappstream-glib libXcursor-devel libXext-devel libXft-devel libXtst-devel libXxf86vm-devel libblack-hole-solver-devel libcanberra-devel libcap-devel libdisplay-info-devel libepoxy-devel libfakekey-devel libfreecell-solver-devel libgcrypt-devel libgit2-devel libical-devel libindi-devel libjpeg-turbo-devel libmtp-devel libnl3-devel libnova-devel libpcap-devel libqalculate-devel libsass-devel libsmbclient-devel libsndfile-devel libsodium-devel libspectre-devel libssh-devel libtirpc-devel libuuid-devel libva-devel libwacom-devel libxcvt-devel libxkbcommon-devel libxkbcommon-x11-devel libxkbfile-devel libxml2 libzip-devel libzstd-devel lm_sensors-devel make meson mpv-libs-devel openal-soft-devel openexr-devel openjpeg2-devel pam-devel pcre-devel phonon-qt5-devel pipewire-devel pipewire-utils pkgconfig(ModemManager) pkgconfig(accounts-qt6) pkgconfig(dbus-1) pkgconfig(gbm) pkgconfig(gl) pkgconfig(gstreamer-1.0) pkgconfig(libaccounts-glib) pkgconfig(libassuan) pkgconfig(libattr) pkgconfig(libavcodec) pkgconfig(libavfilter) pkgconfig(libavformat) pkgconfig(libavutil) pkgconfig(libnm) pkgconfig(libpng) pkgconfig(libproxy-1.0) pkgconfig(libqrencode) pkgconfig(libswscale) pkgconfig(libvlc) pkgconfig(libxml-2.0) pkgconfig(libxslt) pkgconfig(lmdb) pkgconfig(openssl) pkgconfig(polkit-gobject-1) pkgconfig(sm) pkgconfig(wayland-client) pkgconfig(wayland-protocols) pkgconfig(xapian-core) pkgconfig(xcb-cursor) pkgconfig(xcb-ewmh) pkgconfig(xcb-keysyms) pkgconfig(xcb-util) pkgconfig(xfixes) pkgconfig(xrender) plymouth-devel pyside6-tools python python3-psutil python3-setuptools python3-sphinx python3dist(sphinxcontrib-qthelp) qaccessibilityclient-*devel qcoro-qt5-devel qgpgme-devel qt5-*-devel qt5-qtbase-static qt5-qttools-static qt6-*-devel qtkeychain-qt5-devel sassc shared-mime-info shiboken6 signon-devel stellarsolver-devel systemd-devel texinfo wcslib-devel xdotool xkeyboard-config-devel xmlto xorg-x11-drv-evdev-devel xorg-x11-drv-libinput-devel xorg-x11-drv-wacom-devel hunspell expat-devel libcurl-devel nss-devel gi-docgen guidelines-support-library-devel libstemmer-devel libyaml-devel pkgconfig(librsvg-2.0) pkgconfig(libgphoto2) opencv-devel zxing-cpp-devel ostree-devel cdparanoia-devel pkgconfig(xt) freerdp freerdp-devel cmake(ryml) libmpc-devel python3dist(build) clang'
    Updating and loading repositories:
    Repositories loaded.
    

    Thereafter, it verifies that all of these packages have already been installed, which they have:

    Nothing to do.
     * Looks like the necessary packages were successfully installed!
    === generate-config ===
     * You already have a configuration file: ~/.config/kdesrc-buildrc
    

I have reported this:


  1. bugs.kde.org/show_bug.cgi?id=507599#c14 ↩︎