Debug c++ windows tips?

Hi I’m interested in debugging my code in visual studio, so I can help detecting/fixing problems in the new backend. My code is crashing with the new release, I’m using drawTiles to draw and I think the problem is there but I don’t know, that’s why I want to debug it.

I assume somebody is using visual studio to debug there code, any recommendations on how to do it. In iOS is easy because lime creates a new protect for you, but I can’t find an easy way to do it with visual.

Neko uses a lot of the same code as C++, and it gives better error messages. That’s the first thing to try.

If that doesn’t help, try this or this.

1 Like

thank you @player_03 ! Currently neko is just throws exception - [email protected]_read, but I´m going to try debugging using hxcpp with those links.

So I found out that all apps(even empty projects) made with the new openfl were crashing only in my computer :confused: I debbuged the code and apparently the app crash when it trys to call lime_gl_bind_framebuffer .

I have a really cheap video card (Mobile Intel® 4 Series Express Chipset Family) only suporting opengl 2.1 maybe the new target requires more?


I have the same problem with lime_gl_bind_framebuffer. It always crashes with this function. I have an Intel HD 4000. If i use a Nvidia GTX 670M with the application, then it hasn’t any problem.

I fix the problem by using ANGLE, read the last part of this discussion to set ANGLE with lime link

Thanks juakob. I will try it :smile:

Kind Regards.

Which ANGLE binaries did you use?

Hi Joshua, I was using the dll provided by @vroad, but I just found out that if you ran lime rebuild windows -clean -DLIME_SDL_ANGLE and then build any project it just uses lime-legacy.ndll, well at least in my computer. Thats why I thought I fixed the problem but actually I was just using legacy, because if you remove lime.ndll it just runs fine. I’m not using <set name="openfl-legacy" /> or <set name="lime-hybrid" />.

Sometimes when you compile, it hard-codes the path to the NDLL found on the system (so the one in your Lime dev directory) so even if it is not in your project directory, it can still find it in your haxelib path

Ok that makes sense, but the problem is that if I remove lime-legacy.ndll the app throws an error. All builds use lime-legacy.ndll? Now I’m not even adding the ANGLE dlls and it works, that’s why I assume it must be using legacy, and not next. I look at the generated c++ and it adds _legacy package inside openfl. I can’t compile any project if I don’t lime rebuild windows -Dlegacy(in a fresh install)

are you using any frameworks that might be setting legacy by default?

Yes you are right, apparently flixel uses legacy, I made a build of bunnyMark and it works as expected. I’m using the dlls that @vroad made, not sure what version it is. If you want I can compile others versions of ANGLE to see the result.