API version mismatch after testing other SDK

Last week I imported another SDK that uses Realsense like Nuitrack.
However, upon returning to Nuitrack, I can’t run it in the editor anymore. It works fine with older builds of our application I made.

The error I get is the following:
API version mismatch: librealsense.so was compiled with API version 2.20.0 but the application was compiled with 2.17.0! Make sure correct version of the library is installed (make install)

Now I realize what the problem is, the newer SDK probaply updated the librealsense.so
Sadly I can’t find a way to fix this. I want to be able to switch between SDK’s for testing. How and where can I fix this? Is it even possible to switch between them?

NOTE: We have both SDK’s inside our Unity3D project.

Can no one help me with this issue?

Hi Patrick,

What is your OS: Windows or Linux?
What Nuitrack version do you use? It’s displayed at the bottom of the activation tool window.

It seems that now there are two paths, where librealsense2 library is located: the first one is in “another SDK” and the second one is in the Nuitrack folder (%NUITRACK_HOME%/bin for Windows and /usr/local/lib/nuitrack for Linux). To switch between two SDKs, you should specify where your OS should look for this dynamic library. However, an alternative option is to update two SDKs so that the version of librealsense2 is the same for both. The latest Nuitrack is built with librealsense2 v2.21.0. If possible, you can update “another SDK” to this version (and you should also update Nuitrack to a version greater than 0.28.0).

Hi Olga, thankyou for the reaction.

I used version 0.27, and tried reinstalling that. I also updated to 0.28 to see if that helps. But still nothing.
For the “other SDK” which is something homemade, I had to install nothing special. All I did was throw the dll’s in my Unity3D project and thats it. I didn’t install anything. The environment variables for Nuitrack are correct and pointing to the install path. Any other ideas? I also tried renaming the librealsense2 file in Nuitrack, as well as replacing it with a newer one. Nothing works. I use windows by the way.

When I create a build that works. So it seems to be only in the editor.

Thanks in advance.

You don’t have to rename librealsense2 in the Nuitrack folder. The error “API version mismatch” means that there are two librealsense2 libraries on your PC, you have to backup (rename) one of them (but not in Nuitrack).