Building retroarch without opengl library

There is an option in Makefile.win to exclude the opengl library from the retroarch build: HAVE_OPENGL = 0. However, the source code in ui_win32.c has lines which refer to the opengl headers even if opengl is set to off in this makefile. Here are examples in ui_win32.c: #include “…/…/gfx/common/gl_common.h” RARCH_ERR("[WGL]: wgl_shader_dlg_init() failed. ");

I assume these lines should be defined by use of HAVE_OPENGL = 1.

Yeah, the Windows port has historically been assumed to require all of the dependencies but it would be better to change that behavior, especially since it uses the configure script just like on *nixes these days. If you can send a PR for that, I’ll owe you a Coke :slight_smile:

I will continue to work on it. The delay is that the vulkan driver code is not yet enclosed by makefile variables (definition lines) and leads to compiler errors without the vulkan development package, so I’m unable to find any other instances of opengl functions without definitions. However, those two lines above seem to be the only cases in ui_win32.c, so those blocks can be enclosed with if…endif statements of HAVE_OPENGL.

Is there instead a stable branch of retroarch without the experimental features? That may be simpler to expand upon.

Nope. Everything happens in git head, unfortunately. Do you have the vulkan submodule pulled?

I was trying to build Retroarch without many 3rd party libraries as indicated in its readme file: “On Windows, RetroArch can run with only Win32 as dependency.” It is possible to revisit the issue after the next stable release.