Forum Discussion

🚨 This forum is archived and read-only. To submit a forum post, please visit our new Developer Forum. 🚨
ueczz's avatar
ueczz
Honored Guest
11 years ago

List of Oculus Lib Dependencies (on Linux)?

I would like it if a list of all the libraries I need to link against would be in the documentation.
When upgrading to 0.42, I had the problem that I was suddenly getting linker errors, which I had to painfully find the source of (turned out I needed to add winmm.lib - which is mentioned nowhere in the docs, I believe.

Now with 0.43, I have a similar issue on Linux (using Ubuntu 14.04, Gnome 3, GeForce GT 650M with Optimus):

Linking CXX executable Program
/usr/bin/ld: /pth/to/Project/Source/OculusSDK/LibOVR/Lib/Linux/Release/x86_64/libovr.a(OVR_SharedMemory.o): undefined reference to symbol 'shm_unlink@@GLIBC_2.2.5'
//lib/x86_64-linux-gnu/librt.so.1: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make[2]: *** [Program] Error 1
make[1]: *** [CMakeFiles/Program.dir/all] Error 2
make: *** [all] Error 2


This seems to be related to libm.so not being added correctly?
However, linking against it does not seem to do the trick. Am I doing something else wrong?
Please - list dependencies!

Edit: By looking through the makefiles, I figured out that it was librt.so that was missing. Here's the list of dependencies, that I found, if anyone else is looking for it:

librt.so
libXrandr.so
libGL.so
libXxf86vm.so
libpthread.so
${UDEV_LIBRARIES}
#${XINERAMA_LIBRARY}
${X11_LIBRARIES}

Still, my point stands - something like this belongs into the documentation, imho.

3 Replies

  • "ueczz" wrote:

    libXxf86vm.so


    I'm not sure why the SDK would need this. The examples might use it during initialization of their windows, but the SDK almost certainly doesn't.

    "ueczz" wrote:

    ${XINERAMA_LIBRARY}



    Nope. The SDK hasn't depended on this since 0.4.x. The Examples still depended on Xinerama for a while but no longer.

    "ueczz" wrote:

    ${LEAP_LIBRARIES}



    Nope.
  • ueczz's avatar
    ueczz
    Honored Guest
    "jherico" wrote:

    Nope. The SDK hasn't depended on this since 0.4.x. The Examples still depended on Xinerama for a while but no longer.

    Thanks for pointing this out. Yes, my cmake script has kind of evolved since DK1, I never removed some of the old stuff.

    "ueczz" wrote:

    ${LEAP_LIBRARIES}



    Nope.

    My bad, copy+paste error. I removed it above.

    My point still stands, though - I really think these things should be in the documentation.