Jump to content

Guidelines and HOWTOs/Build from source/Windows

From KDE Community Wiki
Revision as of 10:40, 30 January 2018 by Fazevedo (talk | contribs) (Add macos QtC setup)

Craft is a tool to build the sources and its third-party requirements. It is the easy way to build software.

Setting up craft

Installing python

While Craft is capable of installing a embedded Python version sufficient for most packages, we recommend a full installation of Python. The current version is 3.6. Download Python 3.6+

Setting up a powershell

Powershell is required to be at least version 5.0. If you're running Windows 10 you most probably won't need to update Powershell.

You can check the version with $PSVersionTable.PSVersion .

Download Powershell

Setting up a compiler

Currently Craft supports both the MinGW and Microsoft Visual Studio (msvc) compiler. While MinGW can be installed by Craft, Visual Studio must be installed independently by the user.

Direct X SDK

If you are using the MinGW compiler, in order to compile the Qt5 qtbase package you will also need to install the Microsoft DirectX SDK. Make sure to open a new command line window after the installation for the environment variables to be set.

Installing Craft

  • Start a powershell environment.
  • Allow execution of powershell scripts.
 Set-ExecutionPolicy -Scope CurrentUser RemoteSigned
  • Install Craft and folow the instructions
iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/KDE/craft/master/setup/install_craft.ps1'))

Using Craft

To use Craft you need to start a Powershell window, point that to KDEROOT\craft and run the initalization script. For example:

C:\CraftRoot\craft\craftenv.ps1

This tells Craft about your environment settings (e.g. paths). It will load your configuration from CraftRoot\etc\CraftSettings.ini. If there are any error messages Craft will not work as expected. The output should look similar to this one (of course with your paths):

PS C:\CraftRoot\craft>.\craftenv.ps1
Craft Root          : C:\CraftRoot
Craft               : R:\
Version             : master
ABI                 : windows-msvc2017_64-cl
Svn directory       : C:\CraftRoot\download\svn
Git directory       : Q:\
Download directory  : C:\CraftRoot\download

Using Craft with Qt Creator

Windows

To compile from within Qt Creator, I need to set up a kit. This is an example for mingw64.

  • Add a cmake if none is set: R:\dev-utils\cmake\bin\cmake.exe
  • Add a debugger: R:\mingw64\bin\gdb.exe
  • Add a C++ compiler and a C compiler. Both: R:\mingw64\bin\gcc.exe
    • Ensure that the ABI is correctly set
  • Add a Qt: R:\bin\qmake.exe
  • Add a kit with all of the above
  • Use the kit on a project

MacOS

To be able to use Craft libs in you cmake project from QtCreator follow those steps:

  • If the QtVersion used by Craft is not already registered in QtC, then create a new QtVersion by pointing it to the qmake used by Craft
  • Create a new kit by duplicating an existing one or creating a new one from scratch
  • Setup properties of the kit (for from scratch kit):
    • Set cmake binary to the one used by Craft
    • Set debugger binary to the one used by Craft
    • Set C++ and C compiler to the one used by Craft
    • Select the correct QtVersion
    • Ensure abi is correct
  • Setup cmake configuration (all case):
    • Extend CMAKE_PREFIX_PATH, add the Craft prefix path (ie: CMAKE_PREFIX_PATH:STRING=%{Qt:QT_INSTALL_PREFIX};/Volumes/Projects/Developers/Craft)
  • Apply, and now use this Kit for your cmake project