-
Notifications
You must be signed in to change notification settings - Fork 9
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
OpenGL context initialization error #59
Comments
Hi, Which options did you use for compiling it ? Thank you. |
The code looks like is failing here: scummvm/graphics/opengl/context.cpp Lines 115 to 118 in 4f5f776
Not sure about which OpenGL version is actually available or working on your platform, do you have any other core working with GLES2 on your system? |
No.
I'm just using
No.
That might take some time, but I'll try to get it. If you are interesetedin the initial GL context type detection from the
I'll come back with a complete log later on, compilation will take a bit of time.
retroarch.log
From the cores that use the HW acceleration, I thin EDIT: for Flycast's GLES2 context support, the |
Build log, abbreviated - https://pastebin.com/nMu2iGiD. I had from the middle part of the build log since it exceeded the 0.5Mb allowed by pastebin.com. There are 2
|
Can you build again with: |
Using the Platform is unix 32bit
Support for OpenGLES2 requested
Configuring dependencies...
Configuring submodules...
- Submodules configured
- Use system shared fluidsynth: no
- Use system shared FLAC: no
- Use system shared vorbis: no
- Use system shared z: no
- Use system shared mad: no
- Use system shared faad: no
- Use system shared png: no
- Use system shared jpeg: no
- Use system shared theora: no
- Use system shared freetype: no
- Use system shared fribidi: no
Compiling libretro-core.cpp...
Compiling libretro-fs.cpp...
Compiling libretro-fs-factory.cpp...
Compiling libretro-os-base.cpp...
Compiling libretro-os-events.cpp...
Compiling libretro-os-inputs.cpp...
Compiling libretro-os-utils.cpp...
Compiling libretro-threads.cpp...
Compiling libretro-timer.cpp...
Compiling libretro-mapper.cpp...
Compiling libretro-options-widget.cpp...
Compiling libretro-graphics.cpp...
/home/pi/RetroPie-Setup/tmp/build/lr-scummvm/backends/platform/libretro/src/libretro-graphics.cpp: In member function ‘virtual void LibretroOpenGLGraphics::setMouseCursor(const void*, uint, uint, int, int, uint32, bool, const Graphics::PixelFormat*, const byte*)’:
/home/pi/RetroPie-Setup/tmp/build/lr-scummvm/backends/platform/libretro/src/libretro-graphics.cpp:478:9: warning: possible problem detected in invocation of delete operator: [-Wdelete-incomplete]
delete _cursor;
^~~~~~~
/home/pi/RetroPie-Setup/tmp/build/lr-scummvm/backends/platform/libretro/src/libretro-graphics.cpp:478:9: warning: invalid use of incomplete type ‘class OpenGL::Surface’
In file included from /home/pi/RetroPie-Setup/tmp/build/lr-scummvm/backends/platform/libretro/../../../backends/platform/libretro/include/libretro-graphics.h:26,
from /home/pi/RetroPie-Setup/tmp/build/lr-scummvm/backends/platform/libretro/src/libretro-graphics.cpp:28:
/home/pi/RetroPie-Setup/tmp/build/lr-scummvm/backends/platform/libretro/../../../backends/graphics/opengl/opengl-graphics.h:47:7: note: forward declaration of ‘class OpenGL::Surface’
class Surface;
^~~~~~~
/home/pi/RetroPie-Setup/tmp/build/lr-scummvm/backends/platform/libretro/src/libretro-graphics.cpp:478:9: note: neither the destructor nor the class-specific operator delete will be called, even if they are declared when the class is defined
delete _cursor;
^~~~~~~
At global scope:
cc1plus: warning: unrecognized command line option ‘-Wno-undefined-var-template’
Compiling test_new_standards.cpp...
Compiling main.cpp...
Compiling commandLine.cpp...
Compiling plugins.cpp...
/home/pi/RetroPie-Setup/tmp/build/lr-scummvm/backends/platform/libretro/../../../base/plugins.cpp:92:12: fatal error: engines/plugins_table.h: No such file or directory
#include "engines/plugins_table.h"
^~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated. |
Can't reproduce this build error, here it's working fine. Did you try to |
Ok, I've managed to compile without any engines included (not sure what the problem was on my first attempt). I get about the same log, is there extra configuration needed to get more info ? Here is the log retroarch.log
I have added |
That's the most detailed log you can get in this case, I think. |
OK, the log is pretty much similar, but the end says:
Does Related to the |
You are correct regarding the |
Thank you for the fix -
|
The problem may be with your
which looks like the reason why GLAD fails to get e.g. |
For this particular platform (Raspberry Pi, using the Videocore IV GPU) there is an updated driver - the open source one included in Mesa3D's vc4 driver. When using a newer system/distro version, this newer driver will be available and either GLES2 or OpenGL 2.1 should be available. OK, so I guess for this old driver/platform, the 3D context creation should be disabled since it's not possible to acquire the GL context in the core. Thank you for the analysis and solution. |
Hi,
I'm using the ScummVM core on a GLES2 (only) device (Raspberry Pi 3B), after compiling the core with GLES2 support following this commit. RetroArch (1.9.1) starts the GLES2 context alright, but the core fails to detect it (?) and stops with:
Is this a supported configuration ? Is there any additional configuration to be added to core options/RetroArch's config to make it work ? Let me know if any additional info is needed.
The text was updated successfully, but these errors were encountered: