Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[pull] master from LibreVR:master #76

Merged
merged 9 commits into from
Oct 3, 2019
50 changes: 50 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,3 +22,53 @@ This is a compatibility layer between the Oculus SDK and OpenVR. It allows you t
- If you don't see the Revive tab, go to the start menu on your desktop and start the Revive Dashboard. Or check the Applications tab in the SteamVR settings to see if the tab is enabled.

![Revive Logo](Images/revive_black.png)

# Building

Before the project can be built, you must retrieve and set up vendored dependencies.

In bash for Windows:

```
git clone git@github.com:LibreVR/Revive.git
git submodule update --init --recursive
```

Download the Oculus SDK for Windows
[here](https://developer.oculus.com/downloads/package/oculus-sdk-for-windows/)
and place it in `Revive/Externals/'. Then:

```
cd Revive/Externals
unzip ovr_sdk_win_<version>.zip
```

The core Revive library project should then build normally in VS.

To build ReviveInjector, you need to build ReviveXR. To build ReviveXR, you
need to build the OpenXR SDK :)

1. Download and install [Cmake for Windows](https://cmake.org/download/).
2. In Powershell, `cd` to `Revive/Externals/openxr` and do the following:

```
cmake -DCMAKE_BUILD_TYPE=Release -G "Visual Studio [VS Version] [arch]"
```

For instance, under VS 2017 on 64-bit Windows the build target would be
`Visual Studio 15 2017 Win64`.

3. Open the generated `OPENXR.sln` in VS
4. In the C/C++ properties for project `openxr_loader-1_0`, change `Runtime
Library` to `Multi-threaded Debug (/MTd)`
5. Build the solution. This will perform an in-tree build of the OpenXR sdk and
generate the loader library.
6. ReviveXR and ReviveInjector should now build normally.

Notes:

- You must build OpenXR with the same configuration (Debug / Release)
that you build ReviveInjector and ReviveXR in to satisfy configured linker
paths
- Out of tree openxr builds will not work for the same reason, you must build
in tree