WindowsBuild30 » History » Version 12

« Previous - Version 12/32 (diff) - Next » - Current version
Chris Cannam, 2017-01-09 02:04 PM


Building SV v3.0 installers on Windows

Version 3.0 of Sonic Visualiser now has a 64-bit version for Windows. The 32-bit version is also still supported.

  • The 64-bit version is built using Qt Creator with the Microsoft Visual C++ compiler. Install 64-bit Microsoft Visual Studio 2015 Community Edition and then Qt 5.7 (or latest 5.x).
  • The 32-bit version is built using Qt Creator with the MinGW compiler. Install Qt 5.7 (or latest 5.x) with Qt Creator and ensure that the 32-bit MinGW option is available.
  • The official 64-bit installer also includes some helper binaries from the 32-bit build, enabling it to use 32-bit Vamp plugins as well as 64-bit ones. So to make a 64-bit installer, we actually have to complete both builds.
  • The installer is built using WiX, so you must have that installed. The path to WiX is hardcoded in our build.cmd script and at the time of writing it assumes WiX v3.9.

In both cases (32 and 64 bit) the dependent libraries we use are found in the sv-dependency-builds subrepo which is now checked out as a matter of course with the SV repo. There should be no other external dependencies besides Qt and the runtime libraries it needs.

Which SV branch to use

Currently 3.0 release preparation is happening in the 3.0-integration branch, but when 3.0 is actually released, it will be merged to the default branch.

32-bit build and installer

Build

This process is similar to that introduced in v2.1 (see WindowsBuild21), except that we now do use a shadow build.

  • Check out the correct branch (3.0-integration or default as described above)
  • Open the main sonic-visualiser.pro project in Qt Creator
  • Set up a release build using Desktop Qt 5.7.0 MinGW 32-bit as a shadow build
  • "Run qmake" and "Rebuild All"

There is still one unresolved manual step before you can run Sonic Visualiser:

  • Go to the build directory (e.g. build-sonic-visualiser-Desktop_Qt_5_7_0_MinGW_32bit-Release) and copy the file checker\release\vamp-plugin-load-checker.exe to the top-level release directory

You should now be able to run Sonic Visualiser from within the IDE. (You can't yet run the binary from the Windows Explorer, as Qt and other dependencies won't be found.)

Installer

The principle here is:

  1. Copy dependent libraries into release, so that Sonic Visualiser can be run directly from Windows Explorer
  2. Package up the installer using the build.cmd script that runs WiX

64-bit build and installer

Build

  • Check out the correct branch (3.0-integration or default as described above)
  • Open the main sonic-visualiser.pro project in Qt Creator
  • Set up a release build using Desktop Qt 5.7.0 MSVC 64-bit as a shadow build
  • "Run qmake" and "Rebuild All"

If the build was successful, you should now be able to run Sonic Visualiser from within the IDE. (You can't run the binary from the Windows Explorer, as Qt and other dependencies won't be found.)

Installer

The 64-bit installer needs files from both the 64- and 32-bit builds.