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

no window refresh/update with wxWidgets-3.1.5 (Gtk+-3 backend) #886

Closed
stefantalpalaru opened this issue Apr 16, 2021 · 8 comments
Closed

Comments

@stefantalpalaru
Copy link
Contributor

screenshot_2021-04-16_19:04:30

@vsonnier
Copy link
Collaborator

Either your wxWidgets was compiled without OpenGL support, or you don't have proper OpenGL. Both are mandatory. Have a look at the Wiki.

@stefantalpalaru
Copy link
Contributor Author

Either your wxWidgets was compiled without OpenGL support, or you don't have proper OpenGL.

$ lddtree /usr/bin/CubicSDR
...
    libwx_gtk3u_gl-3.1-gtk3.so.5 => /usr/lib64/libwx_gtk3u_gl-3.1-gtk3.so.5
...
        libEGL.so.1 => /usr/lib64/libEGL.so.1
            libGLdispatch.so.0 => /usr/lib64/libGLdispatch.so.0
...
    libGL.so.1 => /usr/lib64/libGL.so.1
        libGLX.so.0 => /usr/lib64/libGLX.so.0

@stefantalpalaru
Copy link
Contributor Author

Configuring wxWidgets-3.1.5 with --disable-glcanvasegl fixed the problem.

@Dantali0n
Copy link
Contributor

Configuring wxWidgets-3.1.5 with --disable-glcanvasegl fixed the problem.

Do you think this should be added to the wiki or is this some edge case due to your Graphics cards its egl implementation being funky.

Perhaps you could indicate the hardware and accompanying driver being used.

@stefantalpalaru
Copy link
Contributor Author

stefantalpalaru commented Apr 17, 2021

Do you think this should be added to the wiki or is this some edge case due to your Graphics cards its egl implementation being funky.

I think it's a matter of the CubicSDR GLX context competing with a wxWidgets EGL context. I'm no expert, but from a summary reading it looks like you can't mix the two in the same application.

Sure, you can document that in the wiki for people building their own wxWidgets, but when 3.1.5 hits distro package repositories, with EGL built in by default, the problem is back.

A long-term solution would be to allow choosing between GLX and EGL in CubicSDR, at configuration time.

@vsonnier
Copy link
Collaborator

vsonnier commented Apr 17, 2021

I think it's a matter of the CubicSDR GLX context competing with a wxWidgets EGL context. I'm no expert, but from a summary reading it looks like you can't mix the two in the same application.

Me neither, I just heard of EGL here... Since CubicSDR access OpenGL "raw" in the GL wxGL context, it then makes sense of disable EGL in wxWigets as @stefantalpalaru found because Cubic use wxWidgets statically so it is part of its DIY recipie.

I've changed the Wiki accordingly for both Linux, MacOS, and refered 3.1.5 as the right version to use.

Thanks @stefantalpalaru for your contribution ! Thanks @Dantali0n for your support as well.

@vsonnier
Copy link
Collaborator

I've updated the Travis scripts as well, referencing 3.1.5 with @stefantalpalaru fix.

@vsonnier
Copy link
Collaborator

I think the issue can be closed now.

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