Skip to content
Pierre Guillot edited this page Jan 8, 2018 · 1 revision

First, you need to pull the repository and its submodules:

git clone --recursive https://github.com/pierreguillot/Camomile.git  
cd Camomile  

or

git clone https://github.com/pierreguillot/Camomile.git
cd Camomile
git submodule update --init --recursive

If you want to compile the plugin as a VST, you must download the VST SDK and put the content of its folder in the ThirdParty/Vst folder. So you'll have something like ThirdParty/Vst/base, ThirdParty/Vst/bin, etc.
VST is a trademark of Steinberg Media Technologies GmbH.
Please register the SDK via the 3rd party developper license on Steinberg site.

  • On Linux:

  • X11 must be installed:

    • sudo apt-get install libx11-dev
    • sudo apt-get install libxrandr-dev
    • sudo apt-get install libxinerama-dev
    • sudo apt-get install libxcursor-dev
  • Freetype must be installed:

    • sudo apt-get install python-dev libfreetype6-dev
  • Available architectures:

    • m32
    • m64
    • arm v6
    • arm v7
  • Available configurations:

    • Debug
    • Release
  • Instructions example:

    • cd Builds/LinuxMakefile
    • make (default) or make TARGET_ARCH=-m64 CONFIG=Release
  • On Mac:

  • Use the Xcode project.

  • On Windows:

  • Pure Data uses pthread-win32, the library must be compiled to be statically linked.

  • Download the library from this repository pthreads-win32.

  • Use the Visual Studio project to compile the static library. It seems that the function _tcsncat_s from tchar.h generates an unresolved symbol during the linking. To avoid this:

    • Comment the inclusion of tchar.h from implementation.h line 116:
    /* _tcsncat_s() et al: mapping to the correct TCHAR prototypes: */
    //#include <tchar.h>
    
    • Change the define from the #if from pthread_win32_attach_detach_np.c line 79:
    #if 1 // defined(__GNUC__) || defined(PTW32_CONFIG_MSVC7)
    
    • Don't forget to define the environment \Release \x86 and/or \Release \x64
    • Put the 32bit lib file in ThirdParty/PthreadWindows/lib/x86.
    • Put the 64bit lib file in ThirdParty/PthreadWindows/lib/x64.
    • Put the pthread.h and sched in ThirdParty/PthreadWindows/include.
  • Use the Visual Studio project. Important, for the moment Pure data does not support Windows 64bit, the only reason is that t_int should be a long long in 64bit instead of long, so replace the definition as explained here to compile.