CMake - OpenVR compilation issues

375 Views Asked by At

I am currently re-working my game/rendering engine. I am doing it cross-platform so have switched to using a CMake build process. I have had no issues building GLFW or GLAD but ran into problems with openvr

It's a fairly basic build right now but I'm relatively new to it

add_subdirectory(lib/openvr)
add_subdirectory(lib/glfw)
add_subdirectory(lib/glad)

target_link_libraries(flux glad glfw openvr_api64)

This all worked fine, can include the headers etc but I get a lot of unresolved external errors

__imp_VR_GetGenericInterface
__imp_VR_IsInterfaceVersionValid
__imp_VR_InitInternal2

and so on...

I've looked at the CMakeLists file in the repo but couldn't find anything that I know of
https://github.com/ValveSoftware/openvr

Any input would be nice

1

There are 1 best solutions below

0
On

The current master branch of ValveSoftware/openvr has a broken build, it has missing files and wrong include paths

TL;DR

ValveSoftware/openvr has a broken build, use my fork with a fixed build: https://github.com/okawo80085/openvr

Long Version

It has been broken on the last release or two(idr)

I ran into this issue myself when I got around to making openvr a proper dep for my driver, and the easiest way to work around this issue (cuz Valve did not fix it for more then 6 months now, even though there are PRs fixing it for them and issues raised regarding broken builds) is to fork openvr and fix it yourself, which is what I also ended up doing

here is my fork - it has a working build and a relatively recently built libs for Linux in openvr/libs/{platform}{architecture}, if you're gonna add it as a subdirectory use the repository root