Using Overte with Wivrn on my laptop: segmentation fault
Hi and thanks for this great software. I'm trying to launch overte appimage using Wivrn. I'm using
- wivrn official flatpak 0.22
- overte official appimage 2024.11.1
Wivrn is successfully connected to the Quest 3
This is what happens on Overte side log.txt
Let me know if I can retrieve some other useful details
What GPU and driver version do you have? If Nvidia drivers, then are you using Vulkan layer described here? https://lvra.gitlab.io/docs/hardware/
It looks like segfault is caused by Opencomposite failing to start. Opencomposite fails to create Vulkan instance, so this would also be really worth reporting to Opencomposite maintainers. Here's the relevant part of the log:
LOG in xrCreateInstance: Instance created
createInfo->applicationInfo.applicationName: OpenComposite_interface
createInfo->applicationInfo.applicationVersion: 1
createInfo->applicationInfo.engineName:
createInfo->applicationInfo.engineVersion: 0
createInfo->applicationInfo.apiVersion: 1.0.12
appinfo.detected.engine.name: (null)
appinfo.detected.engine.version: 0.0.0
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
LOG in xrCreateInstance: Selected devices
Head: 'WiVRn HMD'
Eyes: '<none>'
Left: 'WiVRn HMD left hand controller'
Right: 'WiVRn HMD right hand controller'
Gamepad: '<none>'
Hand-Tracking Left: 'WiVRn HMD left hand controller'
Hand-Tracking Right: 'WiVRn HMD right hand controller'
[OC] Config:226 Checking for app specific config file...
[OC] wini_parse:167 No config file found at /home/gianluca/opencomposite.ini
[OC] CheckAppEnabled:59 [once] Launcher configuration not yet supported on Linux
[OC] GetXRAppName:59 Setting application name to OpenComposite_interface
LOG in xrCreateInstance: Instance created
createInfo->applicationInfo.applicationName: OpenComposite_interface
createInfo->applicationInfo.applicationVersion: 1
createInfo->applicationInfo.engineName:
createInfo->applicationInfo.engineVersion: 0
createInfo->applicationInfo.apiVersion: 1.0.12
appinfo.detected.engine.name: (null)
appinfo.detected.engine.version: 0.0.0
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
LOG in xrCreateInstance: Selected devices
Head: 'WiVRn HMD'
Eyes: '<none>'
Left: 'WiVRn HMD left hand controller'
Right: 'WiVRn HMD right hand controller'
Gamepad: '<none>'
Hand-Tracking Left: 'WiVRn HMD left hand controller'
Hand-Tracking Right: 'WiVRn HMD right hand controller'
[OC] Config:226 Checking for app specific config file...
[OC] wini_parse:167 No config file found at /home/gianluca/opencomposite.ini
[OC] CheckAppEnabled:59 [once] Launcher configuration not yet supported on Linux
[OC] VR_InitInternal2:223 [once] Initializing OpenComposite - revision 34311da-dirty (Wrap calls involving cached views in a mutex, 2024-11-11)
[OC] CreateOpenXRBackend:149 Extension: XR_KHR_binding_modification
[OC] CreateOpenXRBackend:149 Extension: XR_KHR_composition_layer_cylinder
[OC] CreateOpenXRBackend:149 Extension: XR_KHR_composition_layer_depth
[OC] CreateOpenXRBackend:149 Extension: XR_KHR_composition_layer_equirect2
[OC] CreateOpenXRBackend:149 Extension: XR_KHR_convert_timespec_time
[OC] CreateOpenXRBackend:149 Extension: XR_KHR_locate_spaces
[OC] CreateOpenXRBackend:149 Extension: XR_KHR_maintenance1
[OC] CreateOpenXRBackend:149 Extension: XR_KHR_opengl_enable
[OC] CreateOpenXRBackend:149 Extension: XR_KHR_opengl_es_enable
[OC] CreateOpenXRBackend:149 Extension: XR_KHR_swapchain_usage_input_attachment_bit
[OC] CreateOpenXRBackend:149 Extension: XR_KHR_visibility_mask
[OC] CreateOpenXRBackend:149 Extension: XR_KHR_vulkan_enable
[OC] CreateOpenXRBackend:149 Extension: XR_KHR_vulkan_enable2
[OC] CreateOpenXRBackend:149 Extension: XR_KHR_vulkan_swapchain_format_list
[OC] CreateOpenXRBackend:149 Extension: XR_EXT_active_action_set_priority
[OC] CreateOpenXRBackend:149 Extension: XR_EXT_dpad_binding
[OC] CreateOpenXRBackend:149 Extension: XR_EXT_eye_gaze_interaction
[OC] CreateOpenXRBackend:149 Extension: XR_EXT_hand_interaction
[OC] CreateOpenXRBackend:149 Extension: XR_EXT_hand_tracking
[OC] CreateOpenXRBackend:149 Extension: XR_EXT_hp_mixed_reality_controller
[OC] CreateOpenXRBackend:149 Extension: XR_EXT_local_floor
[OC] CreateOpenXRBackend:149 Extension: XR_EXT_palm_pose
[OC] CreateOpenXRBackend:149 Extension: XR_EXT_samsung_odyssey_controller
[OC] CreateOpenXRBackend:149 Extension: XR_BD_controller_interaction
[OC] CreateOpenXRBackend:149 Extension: XR_FB_face_tracking2
[OC] CreateOpenXRBackend:149 Extension: XR_FB_display_refresh_rate
[OC] CreateOpenXRBackend:149 Extension: XR_FB_touch_controller_pro
[OC] CreateOpenXRBackend:149 Extension: XR_FB_touch_controller_proximity
[OC] CreateOpenXRBackend:149 Extension: XR_META_touch_controller_plus
[OC] CreateOpenXRBackend:149 Extension: XR_ML_ml2_controller_interaction
[OC] CreateOpenXRBackend:149 Extension: XR_MND_headless
[OC] CreateOpenXRBackend:149 Extension: XR_MND_swapchain_usage_input_attachment_bit
[OC] CreateOpenXRBackend:149 Extension: XR_MSFT_unbounded_reference_space
[OC] CreateOpenXRBackend:149 Extension: XR_OPPO_controller_interaction
[OC] CreateOpenXRBackend:149 Extension: XR_EXTX_overlay
[OC] CreateOpenXRBackend:149 Extension: XR_HTC_vive_cosmos_controller_interaction
[OC] CreateOpenXRBackend:149 Extension: XR_HTC_vive_focus3_controller_interaction
[OC] CreateOpenXRBackend:149 Extension: XR_MNDX_ball_on_a_stick_controller
[OC] CreateOpenXRBackend:149 Extension: XR_MNDX_egl_enable
[OC] CreateOpenXRBackend:149 Extension: XR_MNDX_force_feedback_curl
[OC] CreateOpenXRBackend:149 Extension: XR_MNDX_hydra
[OC] CreateOpenXRBackend:149 Extension: XR_MNDX_system_buttons
[OC] CreateOpenXRBackend:149 Extension: XR_MNDX_xdev_space
[OC] CreateOpenXRBackend:149 Extension: XR_EXT_debug_utils
[OC] CreateOpenXRBackend:154 Num layers available: 2
[OC] CreateOpenXRBackend:162 Layer: XR_APILAYER_LUNARG_api_dump
[OC] CreateOpenXRBackend:162 Layer: XR_APILAYER_LUNARG_core_validation
[OC] GetXRAppName:59 Setting application name to OpenComposite_interface
LOG in xrCreateInstance: Instance created
createInfo->applicationInfo.applicationName: OpenComposite_interface
createInfo->applicationInfo.applicationVersion: 1
createInfo->applicationInfo.engineName:
createInfo->applicationInfo.engineVersion: 0
createInfo->applicationInfo.apiVersion: 1.0.0
appinfo.detected.engine.name: (null)
appinfo.detected.engine.version: 0.0.0
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
LOG in xrCreateInstance: Selected devices
Head: 'WiVRn HMD'
Eyes: '<none>'
Left: 'WiVRn HMD left hand controller'
Right: 'WiVRn HMD right hand controller'
Gamepad: '<none>'
Hand-Tracking Left: 'WiVRn HMD left hand controller'
Hand-Tracking Right: 'WiVRn HMD right hand controller'
[OC] parseExtensionsStr:14 Str: VK_KHR_external_fence_capabilities VK_KHR_external_memory_capabilities VK_KHR_external_semaphore_capabilities VK_KHR_get_physical_device_properties2
[OC] parseExtensionsStr:30 Add extension: VK_KHR_external_fence_capabilities
[OC] parseExtensionsStr:30 Add extension: VK_KHR_external_memory_capabilities
[OC] parseExtensionsStr:30 Add extension: VK_KHR_external_semaphore_capabilities
[OC] parseExtensionsStr:30 Add extension: VK_KHR_get_physical_device_properties2
[OC] oovr_abort_raw_va:206 Abort!
[OC] TemporaryVk:62 Vulkan Call failed, aborting. /run/build/opencomposite/DrvOpenXR/tmp_gfx/TemporaryVk.cpp:62 TemporaryVk. Error code: -9
vkCreateInstance(&createInfo, nullptr, &instance)
zenity è /usr/bin/zenity
zenity: symbol lookup error: /usr/lib/libgobject-2.0.so.0: undefined symbol: g_pointer_bit_unlock_and_set
OOVR_MESSAGE: OpenComposite Error - info in log: Vulkan Call failed, aborting. /run/build/opencomposite/DrvOpenXR/tmp_gfx/TemporaryVk.cpp:62 TemporaryVk. Error code: -9
vkCreateInstance(&createInfo, nullptr, &instance)
I am marking this as question, since this appears to be an issue with OpenComposite. Overte itself appears to be getting terminated by OpenComposite rather than crashing.
OOVR_MESSAGE: OpenComposite Error - info in log: Vulkan Call failed, aborting. /run/build/opencomposite/DrvOpenXR/tmp_gfx/TemporaryVk.cpp:62 TemporaryVk. Error code: -9
vkCreateInstance(&createInfo, nullptr, &instance)
fish: Job 1, '~/Scaricati/Overte-2024.11.1-x8…' terminated by signal SIGABRT (Abort)
Last time I tried OpenComposite myself, it didn't crash like this. One thing you could try is to get WiVRn through Envision rather than Flatpak: https://gitlab.com/gabmus/envision/ That way we can rule out that Flatpak is causing problems.
Ada has a temporary workaround for this. Quoting from Discord post:
the TemporaryVk crash in opencomposite is because it's trying to load a non-existent vulkan driver inside the appimage's libraries, you can work around it by extracting the appimage and modifying the LD_LIBRARY_PATH line in AppRun to also include your system /usr/lib64 directory (though with that it seems like it might also need qt5-webengine installed on your system?)
Need to do other debug, what I can say is that I tried with latest overte commits compiled with nix and there's no segmentation fault, although the video is not correctly shown in the VR device. I will give other details in the next days
I managed to run overte on meta quest 3 with wivrn, doing this
./Overte-2024.11.1-x86_64.AppImage --appimage-extract
cd squash-root
sed -i 's|LD_LIBRARY_PATH=\$curdir/usr/lib64|LD_LIBRARY_PATH=/usr/lib|' AppRun
./AppRun
Of course I have all the libraries required under /usr/lib
Amazing
I tried the above command and got this error
./overte/interface/interface: symbol lookup error: /home/kit/Downloads/Overte/squashfs-root/overte/interface/../libraries/material-networking/libmaterial-networking.so: undefined symbol: TEXTURE_META_EXTENSION
Anybody know which library I need on Arch?
I appear to be getting a similar failure when launching in VR. Launches fine in desktop mode.
Overte-2025.03.1-x86_64.AppImage WiVRn Flatpak commit a82cd97 (https://github.com/notpeelz/WiVRn/actions/runs/13004448600) (branch for FBT)
Operating System: Bazzite 41 KDE Plasma Version: 6.2.5 KDE Frameworks Version: 6.10.0 Qt Version: 6.8.1 Kernel Version: 6.12.12-203.bazzite.fc41.x86_64 (64-bit) Graphics Platform: Wayland Processors: 16 × AMD Ryzen 7 5800X3D 8-Core Processor Memory: 31.3 GiB of RAM Graphics Processor: AMD Radeon RX 7900 XTX
Logs from running Appimage: error.log
Logs after trying to replace the library path using above: error-patched.log -> I'm thinking the flatpaks on Fedora have a different path they store the libraries at?
I tried the fix mentioned earlier, but got this error:
[default] QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
Please try the --useExperimentalXR command line argument to use OpenXR instead.
E.g.: Overte-2025.05.1-x86_64.AppImage --useExperimentalXR.