Semantic Issue - Reference to 'UInt32' is ambigous - Oculus Rift - ofMaxim

I am trying to understand this error but I can’t figure any solution out.
I am using the ofxOculusDK2 addon and I am trying to integrate that with MFCC function of ofMaxim.
I setup the Oculus rift part and it is working, then on a separate project I have prepared a simple MFcc test that is working.
I then created a class into the Oculus rift project, basically copying all the functionalities from the Mfcc project.
When I run the app I get this error :Semantic Issue - Reference to ‘UInt32’ is ambigous.
From what I can see and understand the compiler following the .h path, ends up in a place and get confused, exactly like me now!
here is the path–>

#include "testApp.h"
#include "Mfcc_obj.h"
#include "ofxMaxim.h"
#include "maxiFFT.h"
#include "fft.h"
#include <Accelerate/Accelerate.h>
#include <vImage/vImage.h>
#include <vImage/vImage_CVUtilities.h>
#include <CoreVideo/CVPixelBuffer.h>  /* #define vImage_CVUtilities_h 1 before including Accelerate headers to turn this header off */
#include <CoreVideo/CVImageBuffer.h>
#include <CoreVideo/CVBuffer.h>
#include <CoreVideo/CVBase.h>
typedef unsigned long                   UInt32;
typedef unsigned int    UInt32 __attribute__((__mode__ (__SI__)));

Reading the comment #define vImage_CVUtilities_h 1 before including Accelerate headers to turn this header off */
make me think that I maybe have to do somethign here. The Accelerate framework is declared in ofMaxim library. I am not sure I am supposed to edit this…

Is anyone around there aware of what is going on?
I can provide more information if needed!

Many thanks

theres the problem.
you are declaring a typename with the same name for two different original typenames. change that and it should work. and hopefully not creating other conflicts. I guess it shouldnt.
comment one of those lines and try.

Hi @roymacdonald ,
thanks for replying.
I will try to explain this:
the first line

typedef unsigned long UInt32;

is in a MacTypes.h file (see attachment).
For what I can understand it looks like a system file (?).

the second line

typedef unsigned int UInt32 attribute((mode (SI)));

is in a file called OVR_types.h and it seems to be in the Oculus VR Rift SDK. (second attachment)
For both files I am not able to get the exact location on my computer so I am guessing all of this by reading the path in Xcode.
At the moment I have commented the second line and my app runs. I haven’t checked further than this for now.
But my main question/doubt is whether that line could be important for other things in the Oculus Rift SDK.
Also, I guess commenting that line will be permanent even if i run other projects with the Oculus rift?
Do you know exactly what are those files?

Hope you can help.
many thanks!

you can know the location of a file in xcode if you right click over the code editor area and choose show in finder.
Right, changing that line is global, it will affect any other program that uses the oculus sdk fand needs to compile. You can use some preprocessor directives to include this line automatically.


makes sense.
thanks a lot for support. I will try this way and see what happens :wink: