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

Latest 1.18.1 won't launch with ARM Linux. #20040

Open
2 of 5 tasks
obsgamecapture opened this issue Feb 26, 2025 · 4 comments
Open
2 of 5 tasks

Latest 1.18.1 won't launch with ARM Linux. #20040

obsgamecapture opened this issue Feb 26, 2025 · 4 comments

Comments

@obsgamecapture
Copy link

Game or games this happens in

None

What area of the game / PPSSPP

Start PPSSPP Flatpak and it won't launch. Does not even work when graphicsbackend is set to Vulkan in PPSSPP ini.

What should happen

Start PPSSPP and it would launch.

Logs

~ $ flatpak run org.ppsspp.PPSSPP
VulkanMayBeAvailable: Device allowed ('SDL:Linux')
Vulkan library loaded ('libvulkan.so.1')
VulkanMayBeAvailable: Enumerating instance extensions
VulkanMayBeAvailable: Instance extension count: 24
VulkanMaybeAvailable: Instance extension found: VK_KHR_device_group_creation (00000001)
VulkanMaybeAvailable: Instance extension found: VK_KHR_display (00000017)
VulkanMaybeAvailable: Instance extension found: VK_KHR_external_fence_capabilities (00000001)
VulkanMaybeAvailable: Instance extension found: VK_KHR_external_memory_capabilities (00000001)
VulkanMaybeAvailable: Instance extension found: VK_KHR_external_semaphore_capabilities (00000001)
VulkanMaybeAvailable: Instance extension found: VK_KHR_get_display_properties2 (00000001)
VulkanMaybeAvailable: Instance extension found: VK_KHR_get_physical_device_properties2 (00000002)
VulkanMaybeAvailable: Instance extension found: VK_KHR_get_surface_capabilities2 (00000001)
VulkanMaybeAvailable: Instance extension found: VK_KHR_surface (00000019)
VulkanMaybeAvailable: Instance extension found: VK_KHR_surface_protected_capabilities (00000001)
VulkanMaybeAvailable: Instance extension found: VK_KHR_wayland_surface (00000006)
VulkanMaybeAvailable: Instance extension found: VK_KHR_xcb_surface (00000006)
VulkanMaybeAvailable: Instance extension found: VK_KHR_xlib_surface (00000006)
VulkanMaybeAvailable: Instance extension found: VK_EXT_acquire_drm_display (00000001)
VulkanMaybeAvailable: Instance extension found: VK_EXT_acquire_xlib_display (00000001)
VulkanMaybeAvailable: Instance extension found: VK_EXT_debug_report (0000000a)
VulkanMaybeAvailable: Instance extension found: VK_EXT_debug_utils (00000002)
VulkanMaybeAvailable: Instance extension found: VK_EXT_direct_mode_display (00000001)
VulkanMaybeAvailable: Instance extension found: VK_EXT_display_surface_counter (00000001)
VulkanMaybeAvailable: Instance extension found: VK_EXT_headless_surface (00000001)
VulkanMaybeAvailable: Instance extension found: VK_EXT_surface_maintenance1 (00000001)
VulkanMaybeAvailable: Instance extension found: VK_EXT_swapchain_colorspace (00000005)
VulkanMaybeAvailable: Instance extension found: VK_KHR_portability_enumeration (00000001)
VulkanMaybeAvailable: Instance extension found: VK_LUNARG_direct_driver_loading (00000001)
VulkanMayBeAvailable: Calling vkCreateInstance
VulkanMayBeAvailable: Vulkan test instance created successfully.
VulkanMayBeAvailable: Eligible device found: 'Turnip Adreno (TM) 630'
VulkanMayBeAvailable: Ineligible device found and ignored: 'llvmpipe (LLVM 19.1.7, 128 bits)'
VulkanMayBeAvailable: Found working Vulkan API!
VulkanMayBeAvailable: Destroying instance
DEBUG: Vulkan might be available.
Info: We compiled against SDL version 2.30.12 and we are linking against SDL version 2.30.12. :)
ThreadManager::Init(compute threads: 8, all: 16)
13:38:084 Core/Config.cpp:373 I[G3D]: Longest display side: 780 pixels. Choosing scale 1
13:38:088 UI/NativeApp.cpp:320 E[LOADER]: Failed graphics backends: OPENGL,OPENGL,OPENGL,OPENGL,OPENGL,OPENGL,OPENGL,OPENGL,OPENGL,OPENGL,OPENGL,OPENGL,OPENGL
Plugin "GTK3 plugin" uses conflicting symbol "png_free".

Platform

Linux / BSD

Mobile device model or graphics card (GPU)

Oneplus 6T

PPSSPP version affected

v1.18.1

Last working version

v1.17.1

Graphics backend (3D API)

OpenGL / GLES

Checklist

  • Test in the latest git build in case it's already fixed.
  • Search for other reports of the same issue.
  • Try resetting settings or older versions and include if the issue is related.
  • Try without any cheats and without loading any save states.
  • Include logs or screenshots of issue.
@hrydgard
Copy link
Owner

Is "Plugin "GTK3 plugin" uses conflicting symbol "png_free"." the last message?

That's really a strange one. PPSSPP does not link to GTK, as far as I know.

@anr2me
Copy link
Collaborator

anr2me commented Feb 27, 2025

Similar to this blender issue? https://projects.blender.org/blender/blender/issues/108308

This looks to be caused by: https://gitlab.freedesktop.org/libdecor/libdecor/-/issues/47

Besides this being resolved by libdecor, the only solutions I'm aware of - is to use a different libdecor plugin, disable libdecor entirely or use X11 instead of Wayland.

See https://docs.blender.org/manual/en/3.6/getting_started/installing/linux_windowing_environment.html for disabling libdecor and forcing X11.

And libdecor issue https://gitlab.freedesktop.org/libdecor/libdecor/-/issues/47

That's a "feature". Libdecor checks for conflicting symbols to prevent crashes when a plugin and the application use the same functions that may conflict. Since GTK uses the png library, the GTK plugin defines a conflict for png_free.
In such a case, libdecor should select the next plugin, which should be the cairo plugin.

@obsgamecapture
Copy link
Author

Is "Plugin "GTK3 plugin" uses conflicting symbol "png_free"." the last message?

That's really a strange one. PPSSPP does not link to GTK, as far as I know.

It's the last message.

@obsgamecapture
Copy link
Author

Similar to this blender issue? https://projects.blender.org/blender/blender/issues/108308

This looks to be caused by: https://gitlab.freedesktop.org/libdecor/libdecor/-/issues/47
Besides this being resolved by libdecor, the only solutions I'm aware of - is to use a different libdecor plugin, disable libdecor entirely or use X11 instead of Wayland.
See https://docs.blender.org/manual/en/3.6/getting_started/installing/linux_windowing_environment.html for disabling libdecor and forcing X11.

And libdecor issue https://gitlab.freedesktop.org/libdecor/libdecor/-/issues/47

That's a "feature". Libdecor checks for conflicting symbols to prevent crashes when a plugin and the application use the same functions that may conflict. Since GTK uses the png library, the GTK plugin defines a conflict for png_free.
In such a case, libdecor should select the next plugin, which should be the cairo plugin.

I tried using x11 with Flatseal. It only does the same thing. I don't get libdecor errors.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants