Building 2.3 on Windows

Compiling to include ASIO. New Visual Studio has a modular installer. What needs to be installed to support Audacity build?

Other questions:

  1. I installed Git Extensions but see no evidence that it also installed Git for Windows; does the latter need to be installed separately?
  2. Do we still need Python? If so, what version?

Thanks.

“Desktop development with C++”


I just downloaded “GitExtensions-2.51.05.msi” from here:

Double click the download file, and followed the on-screen instructions. I did NOT select the “experimental” options.

I don’t think that it is a requirement for building, but you will need it if you want to use “mod-script-pipe” (Scripting - Audacity Manual).
Mod-script-pipe is pretty cool, but entirely optional. The manual currently says that mod-script-pipe is included in the release version by default, but that’s a documentation error. It is not included by default in the release version of Audacity, and if I recall correctly, it is not built by default - you have to add mod-script-pipe to the “solution” that you are building.

If you do want to use mod-script-pipe, the current release version of Python 3 is recommended. (Python 2 is rapidly becoming obsolete, though it is likely to be around for a long time yet because of its widespread use.)

I would highly recommend that you make a standard (without ASIO) build first. Once you’ve got that working you can move on to making an ASIO build.

Tip: Setting environmental variables in Windows seems to be extremely buggy, but setting the environmental variable for WxWidgets is an essential step. Check, double check, reboot and check again that the environmental variable is actually set correctly before moving on from that step.

Tip 2: The build instructions for Windows were written by a developer, from a developer’s perspective. Read through all of the instructions at least twice before you start.

Tip 3: The most up to date instructions for building the latest source code are always on GitHub: https://github.com/audacity/audacity/blob/master/win/build.txt
When building the latest (alpha) code, if there are differences between the wiki instructions (Missing features - Audacity Support) and the GitHub instructions, the GitHub instructions take precedence as they will be the most up to date.

Thanks for your quick reply. I followed your instructions, but when I launch Git Extensions it complains that it can’t find nor repair link to git.cmd/git.exe.

Try running the installer again and carefully read all of the onscreen instructions / options.

If that doesn’t work, you may need to install Git for Windows first. Direct link: https://git-scm.com/download/win
(It’s been a while since I installed Git)

Have made some small progress, but coming up against a lot of barriers because I am trying to compile on Win 7 x64. VS2017 is designed around Win 10; it’s not clear to me what SDK needs to be installed to build and then run on Win 7.

I’m probably not going to be much help with that as I don’t have Windows 7.
Have you managed to build wx_vc15.sln without retargetting the solution?

I interpreted the errors I got building wx_vc15.sln to mean that I needed SDK 8.1 which I then installed via the VS2017 installer. I retargeted the solution to this SDK and ran build again. Still got errors which went away after I also installed “Windows Universal CRT SDK” (again using VS2017 installer under “Compilers, build tools and runtimes”).

Currently downloading Audacity source. Will keep you posted. Thanks.

Almost there. Managed to build Audacity, but getting this launch error after copying newly built audacity.exe over a standard 2.3 install:

Ok, got it. You have to copy those DLLs from wxWidgets. Seems to be running now.

Congratulations :slight_smile:

  1. Can you give any tips for people building on Win 7?

  2. Any parts of the build instructions that you think should change? If so, please quote the current text and say what (exactly) you think it should be changed to.

  3. Did the environmental variable set easily? What method did you use to set it?

I’ve attached notes I saved for future reference. Feel free to use as you see fit.
NEW_V.2.3+_Build Environment Setup.txt (2.54 KB)

Thanks for the notes.
I have a couple of questions regarding your notes which I hope you can clarify:

2. Git

Download and install Git for Windows:

https://git-scm.com/download/win

Also, install Git Extensions:

http://gitextensions.github.io -> Download and run the .msi installer.

So this confirms that “Git for Windows” (https://git-scm.com/download/win) is required in addition to “Git Extensions”?
If so, then I think we need to add that to the official instructions.

There’s an invalid character encoding in the line:

iii. In MSVC 2017 open \wxWidgets\build\msw\wx_vc15.sln, and select "DLL Release – Win32" and "Build Solution"

Between the words “DLL Release” and “Win32” is ascii character Is that supposed to read as "DLL Release Win32" (just a space character between "Release" and "Win32"), or "DLL ReleaseWin32" (grave/accent character between), or something else?

  1. I could not get Git Extensions to “find” Git executable until I installed Git for Windows

  2. It should be a dash: “DLL Release - Win32”

I’ve just had confirmation that the GitExtensions installer used to include the git installer, but no longer does so.
I’ll update the build instructions accordingly.

Thanks for posting your notes. I think the rest of the instructions are in agreement with your notes, but I’ll check, and in the meantime, I’ll include your notes below for easy reference:

I’ve added “Download and install Git for Windows:” to the official build instructions.