Building with Visual Studio Express 2013

Hello all,

first of all greetings for this project. I’m interested in writing some patches. I’d like to start working with OwlSim as a beginning. It’s been some years I didn’t practice c++.

I have some troubles building with Visual Studio Express 2013. I took this one as it’s a free one and OwlSim has the VisualStudio project, it should build.

I had the following problems. Does someone knows how to resolve it ?

  1. In SimpleDelayPatch, int32_t is not recognized :
    I resolve this in StompBox.h with this dirty line :
    #define int32_t int32
    Maybe using replacing by int or int32 should be better.

  2. some array initializers use a resolve-time size assignment. I’m surprise by this, and VisualStudio too. It must be some modern stuff, as VisualStudio doesn’t support new c++ features (C99 ?).
    In LpfDelayPatch and LpfDelayPhaserPatch, I replaced :
    //float y[getBlockSize()];
    float *y = new float[getBlockSize()];
    It’s just for building, as it should be freed afterwards or added as a class member to avoid allocating each time. Or something that’s beyond a 30-seconds analysis.

  3. the dependencie lib FLAC doesn’t build : stream_encoder.c and stream_decoder.c has a lot of errors. All types FLAC_something are not known, as are some functions like fseeko, ftello.
    It must be some includes or libs missing. The VST SDK is installed and its path is OK.

  4. REGISTER_PATCH in patches.cpp fail as it resolves to a class function, but called without class instance.

Hello!

Yes the MS compilers unfortunately don’t support some basic features. The easiest thing to do is to disable those patches that don’t build and then look at which ones you want to get to work with.

patches.cpp is intended to be hash-included from PatchRegistry.cpp, it’s used along with includes.h to determine which patches are included. So if the compiler tries to compile patches.cpp on its own it will fail - remove it from your build if necessary. Then simply comment out those lines in these two files that you don’t need.

As for the FLAC dependency, that must be from Juce. We generate the build scripts using Introjucer, are you familiar with it?

It might be time to revisit the OwlSim windows build. Let me know how you fare!

Ok, for what it’s worth I’ve update Juce to the latest version and regenerated the build files with the latest Introjucer. Going to try it on Windows now.

I managed to build :
replaced #if _MSC_VER <= 1700 by replaced #if _MSC_VER <= 1800 in stream_encoder.c and stream_decoder.c

Good news!
OwlSim compiles again on Win XP, Visual Studio 2010 Express, after I’ve disabled the delay patches and the wave shaper.

A warning comes up about solution folders not being supported in VS Express, but it still builds fine.

I’ve updated the source from the git repository. Now it builds ‘as is’, thanks.

Hi,

I updated OwlSim with the last modifications. It doesn’t build anymore, there’s a problem with the patches inclusion.

just pushed an update.

Seems to be a problem with the new VisualStudio project.

The PatchRegistry folder is not there anymore.

The problems happens when I add the OwlPatches folder in the OwlSim project. The folder was at the root, but I can’t find how to add it there.

I restored old VisualStudio/OwlSim.sln and OwlSim.vcxproj and the build is OK.

Those files must be broken.