-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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
Can't run any of the examples in Windows, error "swap contol extrensions are not supported" #2545
Comments
can you try https://github.com/coderedart/egui fork with glutin_winit branch and see if the issue is fixed. |
You need to do cargo clean after that split debug info change. And are you getting the same glutin error ? |
I did, it was a git clone&checkout to new directory. It's just boring to watch 5 minute gif, so I built it before the record. Here is the log with cargo clean log
|
I'd be happy to provide any additional info to help to resolve the issue. |
try setting log level to debug and backtrace to full. on linux, it would be it will provide us with more info. |
hey @coderedart, sorry for being dormant a bit. There is actually a call stack in the first post, is it helpful? Here is your branch: cargo run log
|
I made setting vsync/swap_interval optional so that it won't panic. can you pull the latest git commits from |
Thanks, I updated it to
Now the process is crashing with null passed to strlen it seems. Here is the console log:
and here is the crash log
|
happening inside glow's let options = eframe::NativeOptions {
initial_window_size: Some(egui::vec2(320.0, 240.0)),
shader_version: Some(eframe::egui_glow::ShaderVersion::Es300), // explicit shader version so that egui won't query opengl for supported version.
..Default::default()
}; If we get another error soon, we need to debug opengl.
|
I'm also hitting this issue and have followed the same troubleshooting steps up until this point. Here's my wglinfo, I will try to try the rest of these steps to help narrow it down.
|
your problem could be a driver issue @whee on my windows, this is the wglinfo output
@kchibisov is it possible to factor in both Egl and Wgl features during display creation? as you can see in the above comment's wglinfo.txt, there's Egl with opengl es 3.0 (using angle) with all sorts of extensions, but glutin-winit will still choose Wgl which doesn't have any display features/extensions at all (swap control or robustness etc..). If it is possible to query the according to #2541 (comment) , glutin doesn't provide code to destroy the created display connections of egl/wgl/glx... so, we can't create two displays and choose the better one, and it may lead to weird to catch bugs. |
Yes, it's some kind of VMWare virtual machine I use for work. I tried making the PreferEgl fix (by editing the source in ~/.cargo and doing a clean build), but it still was trying Wgl. Perhaps that isn't the right way to make that change. |
[dependencies]
eframe = {path = "../egui"} |
Thank you. That makes more sense. I get the same output using my own modified copy. This line in the logs seems interesting, since it mentions 2023-01-14T03:20:55.713805Z DEBUG eframe::native::run::glow_integration: using the first config from config picker closure. config: Wgl(Config { inner: Config { hd There are no other entries in |
ANGLE isn't supported by glutin and never was, patches are welcome though(rust-windowing/glutin#1508).
You'd need to create both displays and ask for features each of it. I think you can do such a thing and then drop the displays, but you'd need to add library unloading into glutin to conserve resources. |
thanks @coderedart, I first tried this:
It led to another crash: Backtrace
sure: wglinfo
It looks like I have the same issue @whee has? No OpenGL devices? I'm using Hyper-V machine for all the logs in this issue. However I have another PC without Hyper-V which has same issue (that machine doesn't have dedicated GPU card, maybe the problem is that I'm connecting to it via RDP?), here is the info from it: wglinfo rdp
It looks like this RDP machine is showing no OpenGL devices as well. So, what would you recommed, how one can develop with egui in such conditions? Rust run the browser to access the GUI? |
maybe it's possible to use WebView2 as a backend for egui? |
always mention that. would have saved a lot of time :). perhaps, the issue template should probably be updated to prompt that info along with OS. anyway, its the same issue. we need to wait until glutin gets angle support (as kchibisov said), then use software glow rendering. same problem for the RDP. it can't find a driver/device with opengl support.
|
sorry, didn't figure out it could be relevant, thanks for all the help! |
I got the same error ( |
Seems like you've either used very old glutin or something forced vsync, but modern glutin doesn't require vsync or any extension in any form. |
Is example from https://github.com/rust-windowing/glutin/ works? |
No, it does not.
|
Sounds like you generally lack OpenGL on your system, because you face |
This is not a glutin error. virtual box windows only provides opengl 1.1 and that is not enough for egui renderer. So, the crash is explicitly caused by egui_glow.
Your best option is to go with software rendering #1129 or wgpu if that works. |
Personally, i made some experiments on this, and i used https://github.com/rustytsuki/egui which is a fork of egui, with skia backend, using skia feature instead of glow, seems to work well on windows compilation and using. This does not resolve the issue, but probably help users using egui on windows plateform for a first step |
I tried to build few examples on Windows and was getting the error:
Once I commented the line
split-debuginfo = "unpacked"
in root's Cargo.toml, now I'm getting:If I run release version the .exe file just exits
rustc version is fixed in
rust-toolchain
to1.65.0-x86_64-pc-windows-msvc
, however I tried to remove it and use1.66.0
as well as nightly with the same result, I also tried on current master branch as well as 0.20.1 without luck. On 0.20.1 however I was able to capture call stack:Backtrace
Meta
I aslo tried it on windows 10
10.0.19045.2364
and windows 1110.0.22621.963
all having the same error.The text was updated successfully, but these errors were encountered: