KDEConnect/Build Windows: Difference between revisions

From KDE Community Wiki
No edit summary
No edit summary
Line 20: Line 20:


3. Call the following commands in a Powershell window with ''Administrator Privileges''
3. Call the following commands in a Powershell window with ''Administrator Privileges''


<pre>
<pre>
Line 57: Line 58:
Craft has automated most of the redundant parts of the build process and exposed just the really useful parameters like ''which version to build'', ''where to install'' ''et al''.
Craft has automated most of the redundant parts of the build process and exposed just the really useful parameters like ''which version to build'', ''where to install'' ''et al''.


# Open '''Craft CraftRoot''' from search (in taskbar)
1. Open '''Craft CraftRoot''' from search (in taskbar)
 
2. Run the following commands now.


# Run the following commands now.


<pre>
<pre>

Revision as of 15:09, 30 August 2019

NOTE: This tutorial assumes Craft is being installed in C:/ [default]

0. SETTING UP ENVIRONMENT

1. Install Visual Studio 2019 (Community) from here and select Desktop development with C++.

2. Install these packages.

Select these components

    • Just-in-Time debugger
    • VC++ 2019 version
    • C++ profiling tools
    • Windows 10 SDK
    • Visual C++ tools for CMake
    • Visual C++ ATL for x86 and x64
    • Test Adapter for Boost.Test
    • Test Adapter for Google Test


3. Call the following commands in a Powershell window with Administrator Privileges


Set-ExecutionPolicy -Scope CurrentUser RemoteSigned
iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/KDE/craft/master/setup/install_craft.


4. During command 2, select the default (Visual Studio 17) as your compiler!

INSTALLATION 1

Select compiler
[0] Mingw-w64, [1] Microsoft Visual Studio 2017, [2] Microsoft Visual Studio 2019 (default is Microsoft Visual Studio 2015): 1
Select architecture
[0] x86 [1] x64 (Default is x64): 1


5. When installation is done, note the Environment variables to match the ones in top of this image:-

env vars

[Environment]
PATH=

Craft                             : C:\CraftRoot
Version                         : master
ABI                                : windows-msvc2017_64-c1
Download directory   : C:\CraftRoot\download


1. BUILDING KDE CONNECT OUT OF LATEST SOURCE CODE

Craft has automated most of the redundant parts of the build process and exposed just the really useful parameters like which version to build, where to install et al.

1. Open Craft CraftRoot from search (in taskbar)

2. Run the following commands now.


craft --set version=master kdeconnect-kde  # set the version of kdeconnect-kde to be installed to the master branch
craft -i kdeconnect-kde # install kdeconnect-kde within CraftRoot


Building an installer

  1. To create an installable setup, you need NSIS- a open source system to create Windows installers. Install it by this command: craft nsis


install NSIS


  1. Now you can use the --package flag to build an installable .EXE out of latest source code available here. The command should look like this: craft --package extragear/kdeconnect-kde

Note the output file here:

Output: "C:\CraftRoot\tmp\kdeconnect-kde-master-86e5cd48-windows-msvc2017_64-cl.exe"

Great thanks to <TheOneRing_m> (Hannah) on IRC Freenode! She is the maintainer of KDE Craft, and a magician! 😄

SETTING UP ENVIRONMENT of MinGW environment (Experimental, Option)

  1. Call the following commands in a Powershell window with Administrator Privileges :-


Set-ExecutionPolicy -Scope CurrentUser RemoteSigned
iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/KDE/craft/master/setup/install_craft.ps1'))


  1. During command 2, feel free to select Mingw-w64 as your compiler!
  2. Select compiler
    [0] Mingw-w64, [1] Microsoft Visual Studio 2015, [2] Microsoft Visual Studio 2017 (default is Microsoft Visual Studio 2015): 0
    Select architecture
    [0] x86 [1] x64 (Default is x64): 1
    


    Then there is no difference between this way and the one above. Note that due to the lacking of some definitions in MinGW provided header file, system volume plugin could not be compiled with all functions on Windows using MinGW. This feature is still an experimental feature. Be sure to tell us if you got stuck somewhere in the process!