Need help Citra on Android mobile keeps crashing


I’m having problems with Citra mobile for android it won’t start up after I press a rom it ends up crashing I need help I’m attaching my log

System Information

  • Operating System:
  • CPU:
  • GPU:
  • Citra Version (found in title bar): 0.5.1
  • Game: Pokémon ultra sun and ultra moon
  • Screenshot of Issue (include the full Citra window including titlebar):

Diagnostic Log
[ 0.016041] Frontend citra_android/jni/emu_window/emu_window.cpp:EmuWindow_Android:52: InitDisplay
[ 0.016074] Frontend citra_android/jni/ndk_helper/GLContext.cpp:Init:78: GLContext Init()
[ 0.035384] Core core/core.cpp:Init:162: CPU JIT requested, but Dynarmic not available
[ 0.036087] Audio audio_core/sink_details.cpp:GetSinkDetails:39: AudioCore::SelectSink given invalid sink_id
[ 0.057928] Render.OpenGL video_core/renderer_opengl/renderer_opengl.cpp:Init:544: GL_VERSION: OpenGL ES 3.2 v1.r15p0-00rel0.4803212d43e88d10fde1b8468b3dc233
[ 0.057954] Render.OpenGL video_core/renderer_opengl/renderer_opengl.cpp:Init:545: GL_VENDOR: ARM
[ 0.057963] Render.OpenGL video_core/renderer_opengl/renderer_opengl.cpp:Init:546: GL_RENDERER: Mali-T830
[ 0.284226] Render.OpenGL video_core/renderer_opengl/renderer_opengl.cpp:DebugHandler:527: API ERROR 50: Error:glEnable:: is not one of the accepted values
[ 0.290120] Render.OpenGL video_core/renderer_opengl/gl_shader_util.cpp:LoadShader:47: Error compiling vertex shader:
0:4: P0003: Warning: Extension ‘GL_EXT_clip_cull_distance’ not supported
0:66: L0002: Undeclared variable ‘gl_ClipDistance’
0:67: L0002: Undeclared variable ‘gl_ClipDistance’
[ 0.290154] Render.OpenGL video_core/renderer_opengl/gl_shader_util.cpp:LoadShader:48: Shader source code:
#version 320 es

#ifdef GL_ES
#extension GL_EXT_clip_cull_distance : enable
#endif // GL_ES
layout(location = 0) in vec4 vert_position;
layout(location = 1) in vec4 vert_color;
layout(location = 2) in vec2 vert_texcoord0;
layout(location = 3) in vec2 vert_texcoord1;
layout(location = 4) in vec2 vert_texcoord2;
layout(location = 5) in float vert_texcoord0_w;
layout(location = 6) in vec4 vert_normquat;
layout(location = 7) in vec3 vert_view;
out vec4 primary_color;
out vec2 texcoord0;
out vec2 texcoord1;
out vec2 texcoord2;
out float texcoord0_w;
out vec4 normquat;
out vec3 view;

#define NUM_TEV_STAGES 6
#define NUM_LIGHTS 8

struct LightSrc {
vec3 specular_0;
vec3 specular_1;
vec3 diffuse;
vec3 ambient;
vec3 position;
vec3 spot_direction;
float dist_atten_bias;
float dist_atten_scale;

layout (std140) uniform shader_data {
int framebuffer_scale;
int alphatest_ref;
float depth_scale;
float depth_offset;
int scissor_x1;
int scissor_y1;
int scissor_x2;
int scissor_y2;
vec3 fog_color;
vec2 proctex_noise_f;
vec2 proctex_noise_a;
vec2 proctex_noise_p;
vec3 lighting_global_ambient;
LightSrc light_src[NUM_LIGHTS];
vec4 const_color[NUM_TEV_STAGES];
vec4 tev_combiner_buffer_color;
vec4 clip_coef;

void main() {
primary_color = vert_color;
texcoord0 = vert_texcoord0;
texcoord1 = vert_texcoord1;
texcoord2 = vert_texcoord2;
texcoord0_w = vert_texcoord0_w;
normquat = vert_normquat;
view = vert_view;
gl_Position = vert_position;
gl_ClipDistance[0] = -vert_position.z; // fixed PICA clipping plane z <= 0
gl_ClipDistance[1] = dot(clip_coef, vert_position);

In order to save a copy of the log, follow this guide:


In order for us to provide better support, we need to see the log generated by Citra. This guide will walk you through how you can obtain the log file: How to Upload the Log File.


Citra for Android is an unofficial port. As we didn’t make it, we won’t provide any support for it.
We are working on our own Android port though.

1 Like
closed #4