Skip to content

Linux experiment openXR #190

Description

@Punzo

Headset: Meta Quest 3
OS: Ubuntu 26.04

  1. Setup wivrn server on linux:
flatpak install flathub io.github.wivrn.wivrn
sudo systemctl enable --now avahi-daemon
flatpak run io.github.wivrn.wivrn
  1. Install wivrn client on meta store on Meta Quest 3
  2. Pair client and server following instructions on wivrn UI.
  3. Verify OpenXR
    cat ~/.config/openxr/1/active_runtime.json
    hello_xr -G Vulkan

this works!

On the other hand, I did not managed to use SlicerVirtualReality @lassoan
A) binaries from Slicer-5.13.0-2026-06-29-linux-amd64 have this library link error:

Error(s):
    Cannot load library /home/davide/Downloads/Slicer-5.13.0-2026-06-29-linux-amd64/slicer.org/Extensions-34829/SlicerVirtualReality/lib/Slicer-5.13/qt-loadable-modules/libqSlicerVirtualRealityModule.so: (/work/Preview/S-0-E-b/SlicerVirtualReality-build/OpenVR/bin/linux64/libopenvr_api.so: cannot open shared object file: No such file or directory)

workaround:

sudo mkdir -p /work/Preview/S-0-E-b/SlicerVirtualReality-build/OpenVR/bin/linux64
sudo ln -sf \
  /home/davide/Downloads/Slicer-5.13.0-2026-06-29-linux-amd64/slicer.org/Extensions-34829/SlicerVirtualReality/lib/Slicer-5.13/libopenvr_api.so \
  /work/Preview/S-0-E-b/SlicerVirtualReality-build/OpenVR/bin/linux64/libopenvr_api.so

B) once (A) is fixed, I clicked the virtual reality button (top left in the image below)

Image

-> Slicer crash:

Switch to module:  "Markups"
Switch to module:  "VirtualReality"
Initializing "OpenXR" XR backend (1/1)
Optional extensions UnboundedRefSpace is supported
Optional extensions HandTracking is supported
LOG in xrCreateInstance: Instance created
	createInfo->applicationInfo.applicationName: OpenXR with VTK
Runtime Name: WiVRn 'v26.6.1'Runtime Version: 26.6.1
	createInfo->applicationInfo.applicationVersion: 1
	createInfo->applicationInfo.engineName: 
	createInfo->applicationInfo.engineVersion: 1
	createInfo->applicationInfo.apiVersion: 1.0.60
	appinfo.detected.engine.name: (null)
	appinfo.detected.engine.version: 0.0.0
	quirks.disable_vulkan_format_depth: false
	quirks.disable_vulkan_format_depth_stencil: false
	quirks.no_validation_error_in_create_ref_space: true
	quirks.skip_end_session: false
	quirks.parallel_views: false
	quirks.no_texture_source_alpha: false
	quirks.ignore_invalid_swapchain_usage_bits: false

LOG in xrGetSystem: Selected devices
	Head: 'WiVRn HMD'
	Eyes: '<none>'
	Left: 'WiVRn left hand interaction'
	Right: 'WiVRn right hand interaction'
	Gamepad: '<none>'
	Hand-Tracking Left (unobstructed): 'WiVRn left controller'
	Hand-Tracking Right (unobstructed): 'WiVRn right controller'
	Hand-Tracking Left (conforming): '<none>'
	Hand-Tracking Right (conforming): '<none>'
System Properties for system id:1, with name "Meta Quest 3 on WiVRn", vendorID=0
	Max Layers          : 128
	Max Swapchain Height: 16384
	Max Swapchain Width : 16384
	Orientation Tracking: True
	Position Tracking   : True
	Hand Tracking       : 1
Runtime supports 1 view configurations
Type XR_VIEW_CONFIGURATION_TYPE_PRIMARY_STEREO: FOV mutable: True
Runtime supports 3 reference spaces:
	XR_REFERENCE_SPACE_TYPE_VIEW
	XR_REFERENCE_SPACE_TYPE_LOCAL
	XR_REFERENCE_SPACE_TYPE_STAGE
View Configuration View 0
	Resolution       : Recommended: 2064x2162, Max: 4128x4324
	Swapchain Samples: Recommended: 1, Max: 1
View Configuration View 1
	Resolution       : Recommended: 2064x2162, Max: 4128x4324
	Swapchain Samples: Recommended: 1, Max: 1
error: [/home/davide/Downloads/Slicer-5.13.0-2026-06-29-linux-amd64/bin/SlicerApp-real] exit abnormally - Report the problem.

C) I tried to compile on linux the slicervirtualreality extension (master branch) against the latest Slicer Slicer/Slicer@d401fce and I got the same crash.
Unfortunately I don't have currently enough time to investigate the crash, here it is the stack trace if it can help:

Image

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions