Difference between revisions of "Compiling Inkscape on Windows 64-bit"

From Inkscape Wiki
Jump to navigation Jump to search
(add cmake instructions)
Line 15: Line 15:


A matching build based on GCC 5.3 can be downloaded [https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/Personal%20Builds/mingw-builds/5.3.0/threads-win32/seh/ here]. The exact version used for building the inkscape-devlibs64 is [https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/Personal%20Builds/mingw-builds/5.3.0/threads-win32/seh/x86_64-5.3.0-release-win32-seh-rt_v4-rev0.7z/download MinGW-w64 x86_64-5.3.0-release-win32-seh-rt_v4-rev0.7z].
A matching build based on GCC 5.3 can be downloaded [https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/Personal%20Builds/mingw-builds/5.3.0/threads-win32/seh/ here]. The exact version used for building the inkscape-devlibs64 is [https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/Personal%20Builds/mingw-builds/5.3.0/threads-win32/seh/x86_64-5.3.0-release-win32-seh-rt_v4-rev0.7z/download MinGW-w64 x86_64-5.3.0-release-win32-seh-rt_v4-rev0.7z].
=== CMake ===
CMake is a Cross-Platform buildsystem generator similar to autotools. It generates '''makefiles''' to be processed by '''make'''.
Get CMake from the [https://cmake.org/ official website cmake.org]. As of writing [https://cmake.org/files/v3.5/cmake-3.5.2-win32-x86.msi version 3.5.2] is the most recent version.


=== Inkscape development libraries for Windows 64-bit ===
=== Inkscape development libraries for Windows 64-bit ===

Revision as of 15:27, 17 April 2016

For 32 bit: see Compiling Inkscape on Windows


Compiling Inkscape on Windows 64-bit works similar to compiling Inkscape on Windows 32-bit where you can find additional information.

This page only describes the basic steps that are required while highlighting the differences compared to a 32-bit build.

Requirements

MinGW-w64

Get MinGW-w64 which contains the necessary GNU developer tools to build Inkscape on Windows.

You have to download a version that is configured for building native win64 applications with win32 threading model and SEH exception handling, to ensure compatibility with the inkscape-devlibs64.

A matching build based on GCC 5.3 can be downloaded here. The exact version used for building the inkscape-devlibs64 is MinGW-w64 x86_64-5.3.0-release-win32-seh-rt_v4-rev0.7z.

CMake

CMake is a Cross-Platform buildsystem generator similar to autotools. It generates makefiles to be processed by make. Get CMake from the official website cmake.org. As of writing version 3.5.2 is the most recent version.

Inkscape development libraries for Windows 64-bit

Get the inkscape-devlibs64 which include pre-compiled binaries of all Inkscape dependencies.

To checkout via Bazaar use the command

bzr checkout --lightweight lp:inkscape-devlibs64 C:\devlibs64

The --lightweight switch ensures that you only have to download the latest version of all binaries, C:\devlibs64 is the folder you want them to be downloaded to.

See also Inkscape Devlibs 64-bit (only relevant if you want to update the development libraries)

Inkscape source code

Get the Inkscape source code from launchpad

To checkout via Bazaar use the command

bzr checkout lp:inkscape C:\inkscape

See also additional information on obtaining Inkscape source code and working with Bazaar.

Building

Environment variables

Edit the file mingwenv.bat in the root directory of the Inkscape source to match you local paths. Most importantly the two lines

IF "%DEVLIBS_PATH%"=="" set DEVLIBS_PATH=c:\devlibs64
IF "%MINGW_PATH%"=="" set MINGW_PATH=C:\mingw64

should point to the folders containing MinGW-w64 and the inkscape-devlibs64.

Whenever you want to build Inkscape open a command prompt (cmd.exe), change into the root directory of the Inkscape source and execute mingwenv.bat to set environment variables.

Compiling build tool

Compile btool (the command line tool that handles the actual build) using

g++ buildtool.cpp -o btool -fopenmp

Compiling Inkscape

Use btool to compile Inkscape compile and create the distribution directory:

btool -file build-x64.xml -j 2

The file build-x64.xml contains the necessary instructions for creating a standard 64-bit build.
If you want to make a GTK+ 3 build use build-x64-gtk3.xml instead (please note that GTK+ 3 builds are experimental and not ready for production yet).

The -j switch allows to instruct btool to use multiple parallel threads to speed up compilation (e.g. 2 in the example above).