libretro / libretro/parallel-n64

Android: core fails to load

Open
#706 0 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
407
Forks
151
Avg merge
11h 53m
Merged PRs (30d)
11

Description

A user reported not being able to load the core with this error:

Failed to open libretro core: "/data/data/com.retroarch/cores/parallel_n64_libretro_android.so"
Error(s): dlopen failed: cannot locate symbol "rand" referenced by "parallel_n64_libretro_android.so"...

which occurs on both 32- and 64-bit installations.

Full log:

Failed to open libretro core: "/data/data/com.retroarch/cores/parallel_n64_libretro_android.so"
Error(s): dlopen failed: cannot locate symbol "rand" referenced by "parallel_n64_libretro_android.so"...
[CORE]: Using content: /storage/emulated/0/RetroArch/downloads/Super Mario 64 (USA)/Super Mario 64 (USA).n64.
Content ran for a total of: 00 hours, 00 minutes, 00 seconds.
[CORE]: Unloading core..
[CORE]: Unloading core symbols..
Threaded video stats: Frames pushed: 2547, Frames dropped: 0.
RetroArch 1.9.0 (Git 5e551dd)
[Overrides]: Redirecting save file to "/storage/emulated/0/RetroArch/saves/Super Mario 64 (USA).srm".
[Overrides]: Redirecting save state to "/storage/emulated/0/RetroArch/states/Super Mario 64 (USA).state".
=== Build =======================================
Capabilities:  NEON VFPv3 VFPv4
[INFO] Built: Aug  8 2020
[INFO] Version: 1.9.0
[INFO] Git: 5e551dd
[INFO] =================================================
jni_thread_destruct()
[CORE]: Loading dynamic libretro core from: "/data/data/com.retroarch/cores/parallel_n64_libretro_android.so"
Failed to open libretro core: "/data/data/com.retroarch/cores/parallel_n64_libretro_android.so"
Error(s): dlopen failed: cannot locate symbol "rand" referenced by "parallel_n64_libretro_android.so"...
[Environ]: SET_PIXEL_FORMAT: RGB565.
[Overrides]: Redirecting save file to "/storage/emulated/0/RetroArch/saves/Super Mario 64 (USA).srm".
[Overrides]: Redirecting save state to "/storage/emulated/0/RetroArch/states/Super Mario 64 (USA).state".
Version of libretro API: 1
[INFO] Compiled against API: 1
[Audio]: Set audio input rate to: 48000.00 Hz.
[Video]: Video @ 960x720
[Video]: Starting threaded video driver ...
Android EGL: GLES version = 2.
[EGL] Falling back to eglGetDisplay
[EGL]: EGL version: 1.4
[GL]: Found GL context: egl_android
[GL]: Detecting screen resolution 0x0.
[EGL]: Current context: 0x6d7c0960.
[GL]: Vendor: ARM, Renderer: Mali-400 MP.
[GL]: Version: OpenGL ES 2.0.
[GL]: Using resolution 1280x800
[GL]: Default shader backend found: glsl.
[Shader driver]: Using GLSL shader backend.
[GL]: Stock GLSL shaders will be used.
[GLSL]: Found GLSL vertex shader.
[GLSL]: Found GLSL fragment shader.
[GLSL]: Linking GLSL program.
[GLSL]: Found GLSL vertex shader.
[GLSL]: Found GLSL fragment shader.
[GLSL]: Linking GLSL program.
[GLSL]: Found GLSL vertex shader.
[GLSL]: Found GLSL fragment shader.
[GLSL]: Linking GLSL program.
[GL]: Using 4 textures.
[GL]: Loaded 1 program(s).
[Joypad]: Found joypad driver: "android".
[Font]: Using font rendering backend: stb-unicode.
[Video]: Found display server: android
[OpenSL]: Requested audio latency: 128 ms.[OpenSL]: Setting audio latency: Block size = 3840, Blocks = 6, Total = 23040 ...
[Display]: Found display driver: "gl".
[Font]: Using font rendering backend: stb-unicode.
[Font]: Using font rendering backend: stb-unicode.
[Font]: Using font rendering backend: stb-unicode.
Failed to open libretro core: "/data/data/com.retroarch/cores/parallel_n64_libretro_android.so"
Error(s): dlopen failed: cannot locate symbol "rand" referenced by "parallel_n64_libretro_android.so"...
[Font]: Using font rendering backend: stb-unicode.
[Font]: Using font rendering backend: stb-unicode.
[Font]: Using font rendering backend: stb-unicode.
[MIDI]: Input disabled.
[MIDI]: Output disabled.
[MIDI]: Initialized "null" driver.
Disconnecting device from port 6.
Disconnecting device from port 7.
Disconnecting device from port 8.
Disconnecting device from port 9.
Disconnecting device from port 10.
Disconnecting device from port 11.
Disconnecting device from port 12.
Disconnecting device from port 13.
Disconnecting device from port 14.
Disconnecting device from port 15.
Disconnecting device from port 16.
[SRAM]: SRAM will not be saved.
[Playlist]: Loading history file: [/data/data/com.retroarch/content_history.lpl].
[Playlist]: Loading history file: [/data/data/com.retroarch/content_music_history.lpl].
[Playlist]: Loading history file: [/data/data/com.retroarch/content_image_history.lpl].
[Playlist]: Loading favorites file: [/data/data/com.retroarch/content_favorites.lpl].
Pause: 0x6745c300
WindowFocusChanged: 0x6745c300 -- 0
NativeWindowDestroyed: 0x6745c300 -- 0x6743fb68
SaveInstanceState: 0x6745c300
Stop: 0x6745c300
 

link to forum thread reporting the issue:
https://forums.libretro.com/t/why-is-mupen64-stuck-at-vulkan/31059/

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the Android load failure for parallel_n64_libretro_android.so and reading the linked forum report alongside the dlopen error in the issue log. Trace how the Android core is built and loaded; done means the core loads successfully on both 32- and 64-bit installations without the missing rand symbol error.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, c
Domain
mobile-dev
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.