Juce Modules: Different external libraries for debug and release builds

Hey there,

I’m currently including a static library into one of our Juce Modules. I want to preserve debug symbols and compile the libs in debug mode. On Windows, I can do this, because the path in the Juce Module is different for debug and release builds:

  • Release: <MyModule>/libs/VisualStudio2017/{arch}/MD/
  • Debug: <MyModule>/libs/VisualStudio2017/{arch}/MDd/

This is nice, because I can simply have two different builds of my library and include the *.pdb debug symbol files right next to each of them.

On macOS however, there is just a single directory:

  • Release & Debug: <MyModule>/libs/MacOSX/{arch}/

This forces me to use just the release version of the library, making debugging much harder. Is there a way I can use separate versions of the library for debug and release like I can on Windows?

EDIT: I’m also wondering how to deal with different versions of XCode - on Windows the libs for different VS versions would land in different folders. On OSX, libs from all versions of XCode would land in the same folder. I would assume that with changes in compiler versions they become incompatible with newer versions of XCode, right?

1 Like

Okay, so then I assume it’s not possible. Then how do you deal with different XCode versions? Have a separate JUCE-Module for each of them? That sounds totally wrong.