[GUIDE] Complete Setup for Compiling HISE with IPP and FAUST (Windows)
-
Hi everyone,
After struggling setting up HISE with FAUST and IPP, I put together a guide covering all the common issues I encountered. This includes:
- Installing Intel IPP to the correct location
- Installing and configuring FAUST
- Handling non-default Visual Studio installations (symlink workaround)
- Common troubleshooting
Tested with the develop branch on Windows 10/11. Hope this saves someone else a few hours of debugging!
Complete Guide: Compiling HISE with IPP and FAUST Support (Windows)
Table of Contents
- Introduction
- Video Tutorial
- Prerequisites
- Installing Intel IPP
- Installing FAUST
- Compiling HISE from Source
- Configuring HISE
- Troubleshooting
- Additional Notes
Introduction
This guide walks you through compiling HISE with Intel Performance Primitives (IPP) and FAUST support on Windows.
Why use IPP?
- Almost mandatory for convolution reverb projects
Why use FAUST?
- Enables custom DSP node creation
Time investment: 1-2 hours for first-time setup
Video Tutorial
For a visual walkthrough of this process, check out David Healey's video guide:
https://www.youtube.com/watch?v=VzS7C1aibn4&feature=youtu.beNote: David's video assumes default installation locations for VS2022, FAUST, and IPP, and also covers FFTW as an option.
- Custom VS2022 installation: See Non-Default VS2022 Installation
- Custom FAUST installation: See Step 6 note about updating FAUST paths in Projucer
Prerequisites
Before starting, ensure you have:
- Windows 10/11 (64-bit)
- Visual Studio 2022 (Community, Professional, or Enterprise)
- REQUIRED: During installation, select "Desktop development with C++"
- RECOMMENDED: Install to default location:
C:\Program Files\Microsoft Visual Studio\2022\Community\ - If you installed VS2022 elsewhere, see Non-Default VS2022 Installation below
- Git for cloning the HISE repository
- ~10 GB free disk space for HISE, IPP, FAUST, and build artifacts
Non-Default VS2022 Installation
If you installed Visual Studio 2022 to a custom location (e.g.,
D:\VS2022), HISE won't be able to find MSBuild automatically. You need to create a symbolic link:Steps:
- Open Command Prompt as Administrator
- Create the parent directory:
mkdir "C:\Program Files\Microsoft Visual Studio\2022" - Create the symbolic link (replace
D:\VS2022with your actual VS2022 path):mklink /D "C:\Program Files\Microsoft Visual Studio\2022\Community" "D:\VS2022" - Verify the symlink was created successfully
Why this is needed:
- HISE's build scripts expect MSBuild at the default path
- The symlink redirects the default path to your custom installation
- This allows HISE to find MSBuild without modifying any code
Installing Intel IPP
Step 1: Download Intel IPP
You can download just IPP instead of the entire oneAPI toolkit.
- Go to: https://www.intel.com/content/www/us/en/developer/tools/oneapi/ipp-download.html
- Select Windows -> Online Installer (or Offline if you prefer)
- Download the installer
Step 2: Install to Default Location
IMPORTANT: Install IPP to the default location to avoid path issues.
- Run the installer
- When prompted for installation path, use:
C:\Program Files (x86)\Intel\oneAPI\ - Complete the installation (may take 15-30 minutes)
Why default location matters:
- HISE's code generation assumes standard Intel paths
- Installing elsewhere requires extensive manual path configuration
Step 3: Verify Installation
After installation, verify IPP is installed correctly:
- Navigate to:
C:\Program Files (x86)\Intel\oneAPI\ipp\ - You should see a version folder (e.g.,
2022.3,2023.2) - Inside that folder, verify these subdirectories exist:
include\ipp\- Containsippcore.hand related headerslib\intel64\- Contains IPP library files
Example path to ippcore.h:
C:\Program Files (x86)\Intel\oneAPI\ipp\2022.3\include\ipp\ippcore.hInstalling FAUST
Step 1: Download FAUST
- Go to: https://github.com/grame-cncm/faust/releases
- Download the latest Windows installer (e.g.,
Faust-2.XX.XX-win64.exe)
Step 2: Install FAUST
- Run the installer
- Install to the default location:
C:\Program Files\Faust\orD:\Faust\ - Complete installation
Step 3: Verify Installation
Check that FAUST is installed:
- Navigate to your installation directory (e.g.,
C:\Program Files\Faust\) - Verify
include\folder exists with FAUST headers
Note: You'll configure the FAUST path in HISE later - just remember where you installed it.
Compiling HISE from Source
Step 1: Choose HISE Version
Important: HISE has two main branches:
- master / release (e.g., 4.1.0) - Stable releases
- develop - Latest features, may have breaking changes
If you're:
- Starting a new project -> Use develop branch (latest APIs)
- Working on existing project -> Match the HISE version it was created with
How to check your project's HISE version:
- Check when the project was last compiled and match to HISE release dates
For this guide, we'll use the develop branch.
Step 2: Clone HISE Repository
- Open Command Prompt or PowerShell
- Navigate to where you want HISE (e.g.,
D:\) - Clone the repository:
D: git clone https://github.com/christophhart/HISE.git HISE cd HISEThis will take several minutes as it includes modified JUCE source code.
Step 3: Extract SDK Files
- Navigate to:
D:\HISE\tools\SDK\ - Extract
sdk.zipto the same directory - After extraction, you should have:
D:\HISE\tools\SDK\ASIOSDK2.3\D:\HISE\tools\SDK\VST3 SDK\
Step 4: Copy FAUST Headers to HISE
- Navigate to your FAUST installation:
D:\Faust\include\ - Inside you'll find another
faustfolder - open it - Copy the contents of this inner
faustfolder - Navigate to:
D:\HISE\tools\faust\ - Paste the copied files here (merge with existing folder contents)
Why this is needed:
- HISE includes a partial FAUST folder, but it's missing required headers
- FAUST's complete headers must be copied into HISE's tools directory
- Without this, HISE compilation will fail
Step 5: Open in Projucer
Projucer is JUCE's project management tool, included with HISE.
- Navigate to:
D:\HISE\tools\projucer\ - Run Projucer.exe
- In Projucer, open:
D:\HISE\projects\standalone\HISE Standalone.jucer
Step 6: Configure IPP and FAUST in Projucer
Important configuration step:
- In Projucer, select Exporters -> Visual Studio 2022
- Find setting: "Use IPP Library (oneAPI)"
- Change from
NotoYes (Default Linking) - Open "Release with Faust"
- Update "Header Search Paths" & "Extra Library Search Paths & "Post-build Command" (if Faust is installed to non-default location)
C:\Program Files\Faust\include->D:\Faust\includeC:\Program Files\Faust\lib->D:\Faust\libC:\Program Files\Faust\lib\faust.dll->D:\Faust\lib\faust.dll
Note: There is NO manual path field for IPP - Projucer expects it in the default Intel location.
Step 7: Save and Generate Visual Studio Project
- In Projucer, click "Save Project and Open in IDE"
- This will:
- Generate Visual Studio solution files
- Automatically open Visual Studio 2022
- Create the project at:
D:\HISE\projects\standalone\Builds\VisualStudio2022\
Step 8: Compile HISE in Visual Studio
- In Visual Studio, select configuration: Release | x64
- Build Solution (
Ctrl + Shift + B) - Wait for compilation (10-30 minutes depending on your CPU)
If you encounter IPP-related errors:
- See Troubleshooting section below
- Most common issue:
ippcore.hnot found
Step 9: Verify Successful Build
After compilation completes:
- Navigate to:
D:\HISE\projects\standalone\Builds\VisualStudio2022\x64\Release\ - You should see
HISE.exe - Run the executable - HISE should launch
Configuring HISE
Step 1: Configure Settings
When working on your own HISE project:
- Open your
.xmlproject file in HISE - File -> Settings
- Set the Hise Path to your compiled develop-branch HISE:
- Example:
D:\HISE\
- Example:
- This ensures your project uses the correct HISE version
- Set the Faust Path to your Faust folder:
- Example :
D:\Faust\
- Example :
Why this matters:
- Projects created with different HISE versions may have API incompatibilities
- Always use the same HISE version you'll export plugins with
Troubleshooting
Issue: "Cannot open include file: 'ippcore.h'"
Cause: Visual Studio can't find the IPP headers.
Solution:
When downloading IPP, make sure to install in the default location and let the installer set up IPP for VS2022
Issue: HISE Setup Wizard Says "Not Detected"
Cause: HISE checks default download location for IPP.
Solution:
Same solution as issue above
Additional Notes
Compiling Plugins vs. Compiling HISE
This guide covers compiling HISE itself. Once HISE is compiled, you'll use it to export your plugins (VST3, AU, etc.).
Plugin export process:
- Open your HISE project (
.xmlfile) - File -> Export -> Compile project
- HISE will auto-generate C++ code and compile with MSBuild
- Output: VST3/AU/AAX plugin files
FAUST Module Compilation
FAUST DSP code needs to be compiled to DLLs before use:
- Export -> Compile DSP networks as dll
- After which you will be able to replace your FAUST scripts with the generated DLLS
If DLL compilation fails:
- Ensure FAUST path is set in HISE
- See troubleshooting section above
Keeping HISE Updated
To update HISE to the latest version of your current branch:
- Navigate to your HISE installation folder (e.g.,
D:\HISE) - Run:
D: cd HISE git pullThen recompile following steps 5-9 in the compilation section.
Warning: Updates may introduce breaking changes. Test thoroughly before using on production projects.
Contributing Back
If you find bugs or improvements while using HISE:
- Report issues: https://github.com/christophhart/HISE/issues
- Join the forum: https://forum.hise.audio/
- Consider contributing fixes via Pull Requests
Summary Checklist
Visual Studio 2022 installed to default location or set up with symlink
Intel IPP installed to C:\Program Files (x86)\Intel\oneAPI\
FAUST installed
HISE repository cloned (develop branch)
SDK files extracted
FAUST headers added in the HISE installation
Projucer: "Use IPP Library (oneAPI)" set to "Yes (Default Linking)"
HISE compiled successfully in Visual Studio
FAUST path set in HISE settings
HISE path points to compiled develop-branch HISE
Troubleshooting Help:
If you're still stuck after following this guide:
- Post on HISE forum: https://forum.hise.audio/
- Include error messages and HISE version
- This guide will be updated based on community feedback
Good luck building with HISE!
-
Is this AI generated?
@c4k3ss said in [GUIDE] Complete Setup for Compiling HISE with IPP and FAUST (Windows):
Copy FAUST Headers to HISE
Update "Header Search Paths" & "Extra Library Search Paths & "Post-build Command" (if needed)
I don't think these steps are needed
-
@d-healey Used AI to help me format it (as in make it concise), but obviously I didn't tell it to make the steps for me.
I'm not sure it works if your install path for Faust is different from the ones in there.
Again, this is from my experience.
If it's that bad of a guide I'll delete it.

-
@c4k3ss said in [GUIDE] Complete Setup for Compiling HISE with IPP and FAUST (Windows):
If it's that bad of a guide I'll delete it.
I think it's good, should probably be included in the docs. I just don't think those faust steps are necessary - I could be wrong though, it's been a while since I set things up on Windows.
-
@d-healey Thanks!

@d-healey said in [GUIDE] Complete Setup for Compiling HISE with IPP and FAUST (Windows):
I just don't think those faust steps are necessary
From my testing, they are. Having the wrong path for Faust won't let the solution build correctly. Not sure if changing all of them is necessary, but if one is I reckon the rest of them are too.
As mentioned this is only if you install Faust somewhere else other than the default location.
-
@c4k3ss said in [GUIDE] Complete Setup for Compiling HISE with IPP and FAUST (Windows):
As mentioned this is only if you install Faust somewhere else other than the default location.
Ah ok, I might be blind, where does it say that you only need this if it's installed to a non-standard location? The only thing I see is "(if needed)" but how will a beginner know if they need it?
Look at your project's generated code for API signatures
This is a bit confusing to me, what does it mean?
git clone https://github.com/christophhart/HISE.git HISE-develop
I would recommend not calling the folder HISE-develop. Go with the default HISE. That way when you want to switch between branches and commits it's less confusing.
Open your .hip project file in HISE
It's best to use .xml for your main project file.
File -> Settings (or project-specific settings)
What does "or project-specific settings" mean? Isn't that the same as File > Settings?
Export -> Export Tools -> Compile DSP networks as dll
I don't see "Export > Export Tools" (is this an AI invention?)
I did make a video about this process recently that you might want to reference - although I assume the default locations for VS, FAUST, and IPP. I also included FFTW as an option.
-
I don't see "Export > Export Tools" (is this an AI invention?)
Export Tools is a subsection of the menu, but it might not show up on all platforms.
-
@d-healey said in [GUIDE] Complete Setup for Compiling HISE with IPP and FAUST (Windows):
but how will a beginner know if they need it?
Yeah it can be more clearly worded
This is a bit confusing to me, what does it mean?
Again, wording is vague, but for example I had an issue on 4.1.0 where I'd get an
wrap::illegal_polyerror, which is not present on the develop branch, pretty much what that is trying to say.I would recommend not calling the folder HISE-develop. Go with the default HISE. That way when you want to switch between branches and commits it's less confusing.
Right, that makes more sense
It's best to use .xml for your main project file.
I didn't know that, good to know.
What does "or project-specific settings" mean? Isn't that the same as File > Settings?
It is, but the settings are project-specific. (I think. AI worded it wrong, I didn't catch that)
I don't see "Export > Export Tools" (is this an AI invention?)
What Christoph said, but I guess it would be clearer for the user to not mention Export Tools
I did make a video about this process recently that you might want to reference - although I assume the default locations for VS, FAUST, and IPP. I also included FFTW as an option.
A video is definitely helpful. I was thinking of adding screenshots but I didn't get to it.
I'll update it now!
-
@Christoph-Hart said in [GUIDE] Complete Setup for Compiling HISE with IPP and FAUST (Windows):
Export Tools is a subsection of the menu
Oh right, I see it now. I was looking for a submenu.
-
I'd like to contribute the guide to the official installation guide in the documentation via PR, although I noticed the Contributing Guidelines link in the repository appears to be broken
-
D d.healey referenced this topic