README (2231B)
1 This is the source code for the OpenVR API client binding library which connects 2 OpenVR applications to the SteamVR runtime, taking into account the version 3 of the OpenVR interface they were compiled against. 4 5 The client binding library - openvr_api.dll on Windows, openvr_api.so on 6 Linux, and openvr_api.dylib or OpenVR.framework on macOS - knows how to find 7 and read the SteamVR runtime installation information which allows it to 8 find and dynamically connect to the installed runtime. In combination with the 9 interface version identifiers from /include/openvr.h which are baked 10 into applications at the time they are built, the OpenVR API client 11 binding library captures and conveys to the SteamVR runtime the version 12 of the OpenVR API interface behavior that the application expects. 13 14 Applications carry with them a private/local copy of the client binding 15 library when they ship, and they should install it locally to their 16 application. Applications should not install the client binding library 17 globally or attempt to link to a globally installed client binding library. 18 Doing so negates at least part of the ability for the client binding library 19 to accurately reflect the version of the OpenVR API that the application 20 was built against, and so hinders compatibility support in the face of 21 API changes. 22 23 Most applications should simply link to and redistribute with their application 24 the pre-built client binding library found in the /bin directory of this 25 repository. Some small number of applications which have specific requirements 26 around redistributing only binaries they build themselves should build 27 the client library from this source and either statically link it into 28 their application or redistribute the binary they build. 29 30 This is a cmake project, to build it use the version of cmake appropriate 31 for your platform. For example, to build on a POSIX system simply perform 32 33 cd src; mkdir _build; cd _build; cmake ..; make 34 35 and you will end up with the static library /src/bin/<arch>/libopenvr_api.a 36 37 To build a shared library, pass -DBUILD_SHARED=1 to cmake. 38 To build as a framework on apple platforms, pass -DBUILD_FRAMEWORK=1 to cmake. 39 To see a complete list of configurable build options, use `cmake -LAH`