===== Compiling synergy for Windows 64-bit ===== This procedure is kind of complicated, but it gets it done with free tools (and a few downloaded add-ons). ==== Prerequisites ==== Install everything that the [[https://github.com/synergy/synergy/wiki/Compiling|Synergy Wiki]] recommends. I do this in a special VM just for this, because some of these tools are really old and I don't like keeping them installed. * CMake 3.3.1 * Python 2.7.10 * Qt SDK 2010.02 * Wix 3.9 * Bonjour SDK for Windows 3.0 * Make sure CMake and Python are added to your PATH. We're doing a 64-bit build, and the Synergy Wiki recommends VS 2005 or 2008, but I will explain how to get this done for free with Visual C++ 2010 Express. Install the following (in order, as recommended [[http://forum.celestialmatters.org/viewtopic.php?t=404|here]]): * [[http://download.microsoft.com/download/1/D/9/1D9A6C0E-FC89-43EE-9658-B9F0E3A76983/vc_web.exe|Visual C++ 2010 Express Edition]] * [[http://www.microsoft.com/downloads/en/details.aspx?FamilyID=6b6c21d2-2006-4afa-9702-529fa782d63b&displaylang=en|Windows SDK for Windows 7 and .NET Framework 4]] * This will not install in Windows 10 without hackery. [[http://stackoverflow.com/a/32322920/2994584|See this workaround]]. * [[http://www.microsoft.com/downloads/en/details.aspx?FamilyID=75568aa6-8107-475d-948a-ef22627e57a5|Visual Studio 2010 SP1]] * [[http://www.microsoft.com/downloads/en/details.aspx?FamilyID=689655B4-C55D-4F9B-9665-2C547E637B70&displaylang=en|Visual C++ 2010 Service Pack 1 Compiler Update for the Windows SDK 7.1]] ==== A few extras not included with Visual C++ 2010 Express Edition ==== Grab a few extras normally included with the full Visual Studio 2010 but not with Express (search for them if you can't find them…) * [[https://code.google.com/p/chromium/issues/detail?id=246256#c17|vcvars64.bat for Visual Studio 2010]] * Install this in ''C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64'' * Microsoft_VC100_CRT_x64.msm for Visual Studio 2010 \\ %%*%% Install this in ''C:\Program Files (x86)\Common Files\Merge Modules'' ==== Do the build ==== * Start a Command Prompt, go into the synergy source directory. * Add Qt to the PATH: * ''set PATH=%PATH%;C:\Qt\2010.02\qt\bin;C:\Qt\2010.02\bin;C:\Qt\2010.02\mingw\bin'' * Figure out the correct generator: * ''hm genlist'' * Use the generator for Visual Studio 10 Win64 (2 as of this writing): * ''hm conf -g2'' * Build it: * ''hm build'' * Fix something in the installer: * In ext/toolchain/commands1.py, edit getVersionForFilename to return a string e.g. "v1.7.4-stable" instead of trying to run git. * Build the installer: * ''hm package win''