-
Notifications
You must be signed in to change notification settings - Fork 2
AudYoFlo: Setting up MS Windows Visual Studio
Microsoft Windows is currently the main development platform for AudYoFlo. Originally started based on a Linux laptop, I came to the point where the audio device on the laptop was not properly supported by the available ALSA driver (that was in 2003!). I then switched to MS Windows and a USB ASIO device which did not cause any problem and finally sticked with Windows. I turned back to Linux later then which is also supported by AudYoFlo. However, I had become comfortable with Windows, Visual Studio and the simplicity of programming ASIO soundcards.
In order to run AudYoFlo on a Windows system, we mainly need the following tools to be installed:
- Visual Studio 2022
- The Git Bash - we will use the git bash for some tasks which are not related to Git but just need a (simplified) shell.
- Installing Python 3
- MSys 2 as the extender of the Git Bash - since tools are not part of Git Bash we need for pre-building third-party components.
- Setup environment variables
The following will guide you through the process and the required steps to install pre-requisites for a Windows build:
Visual Studio can be downloaded a the following location:
https://visualstudio.microsoft.com/de/vs/community/
Once the download is complete, the installer will run additional downloads afterwards,
and start the component selection dialog.
The Git Bash installer is available for download at the following location:
https://git-scm.com/downloads
In the next step, python
needs to be installed. Two levels of pythom usage are supported, to either use python as a tool to install third-party libraries only (Level I) or to involve python integrations of AudYoFlo functions to enable AudYoFlo signal processing within python (Level II).
In MS Windows, we can install python for example via the Microsoft Store,
Recently, I recommend to install anaconda to install python. Note that python should only be activated on 64 bit builds since python for x86 (32 bit) is, e.g., not available in anaconda.
In the AudYoFlo build process, often, shell scripts are executed by using the Git Bash micro shell script environment. However, in some cases, more that the basic functionality is required. In these cases, the build process of third party tools is run in the MSYS2 environment.
MSYS2 is available here,
https://www.msys2.org/
Once the installer has been run, further installations need to be run by using the pacman
packet manager. Mainly, the tools yasm, make base-devel and unzip are required:
pacman -S yasm
pacman -S make
pacman -S base-devel
pacman -S unzip
pacman -S nasm
pacman -S pkg-config
Once the installation of the packages has been completed, the installation folder needs to be added to the Windows system path. In order to check functionality, the user should be able to run msys2_shell.cmd
from within the x64 VS native command tool
,
In the final installation step, we need to make modifications if file msys2.ini
which is typically located in the msys2 installation folder,
In this file, uncomment line MSYS2_PATH_TYPE=inherit
:
From the x64 native command shell we can run
msys2_shell.cmd -use-full-path -where "%cd%" -c "./prepareModules.sh"
to start an msys2 shell with all paths set to find all VS tools since all variables are inherited.
For low level routine, recently, AudYoFlo switched to Rust. In order to integrate Rust into the development system, we need to install the Rust toolchain:
- Download
rust_up
from here
- Run the tool
The rust tools are added to the environment variable automatically.
- Install helper tool
cbindgen
:
cargo install --force cbindgen
- Install development toolchain for 32 bit - in case required:
rustup target add i686-pc-windows-msvc
The installation of AudYoFlo requires to set the following environment variables:
- Add the Flutter executable path (typically
AudYoFlo\sources\jvxLibraries\third_party\web\flutter\flutter-3.7.4\bin
in case we download at build time) to the PATH variable,
- Specify the AudYoFlo SDK folder in the system environment. This can be done already before running any build step,
The QT UI toolkit is typically downloaded and installed in pre-compiled manner during the initial AudYoFlo build process. However, users may desire to link to a dedicated installation of QT. In that case, QT can be configured and compiled manually as described by the following screenshots.
QT is available for download at the following location:
https://download.qt.io/official_releases/qt/5.15/5.15.8/single/
configure.bat -debug-and-release -opensource -nomake tests -nomake examples -confirm-license
nmake && nmake install