KDevelop/Installer Creation on Windows

From KDE Community Wiki

Introduction

Installers on Windows are created with the help of Craft. Craft is a user-space package manager for Windows, which can compile all dependencies of KDevelop (including Qt5, KF5, Clang/LLVM, etc. pp.) for us.

Setup

To create an installer using Craft, you need to:

  1. Install and bootstrap Craft: https://community.kde.org/Guidelines_and_HOWTOs/Build_from_source/Windows

Note: You need at least Microsoft Visual Studio 2015 or any newer GCC on Windows to compile KDevelop!

  1. Check out the kdevelop-release branch

Create the installer

Compile and install all dependencies of KDevelop & KDevelop itself:

craft kdevelop

Create an installer for kdevelop, including kdev-php, kdev-python and kate:

craft --options=features.fullkdevelop=1 --package kdevelop

Note: You'll end up with a KDevelop installer .exe in %KDEROOT%\tmp

Create an updated installer with existing Craft checkout

To update KF5 + KDevelop, you can invoke the following commands

Update KF5

craft  -i --noclean extra-cmake-modules attica kapidox karchive kcodecs kconfig kcoreaddons kdbusaddons kdnssd kguiaddons ki18n kidletime kimageformats kitemmodels kitemviews kplotting kwidgetsaddons kwindowsystem solid sonnet threadweaver kauth kcompletion kcrash kdoctools kunitconversion kconfigwidgets kpackage kservice kemoticons kiconthemes kjobwidgets knotifications ktextwidgets kwallet kglobalaccel kxmlgui kbookmarks kio kdeclarative kcmutils knewstuff frameworkintegration kinit  knotifyconfig kparts kactivities kded kdewebkit syntax-highlighting ktexteditor kdesignerplugin plasma-framework kfilemetadata breeze-icons oxygen-icons5

Update KDevelop related packages

craft -i --noclean grantlee kdevelop-pg-qt kdevplatform kdevelop kdev-php kdev-python kate

Repackage

craft --options=features.fullkdevelop=1 --package kdevelop

Continuous Integration System

Installer packages are currently created on https://binary-factory.kde.org/ -- system administered by Kevin Funk ([email protected])