flyx / OpenGLAda

Thick Ada binding for OpenGL and GLFW
flyx.github.io/OpenGLAda/
MIT License
95 stars 13 forks source link

Windows installer - after installation #143

Closed zertovitch closed 4 years ago

zertovitch commented 4 years ago

The installation went seamlessly (I've noticed the non *-test .gpr's are put into a subdirectory of GNAT CE 2020, I assume it is the right way of doing things). Now, what's the next step? I've opened in GPS the project opengl-text-test.gpr from a copy of the git repo. The builder tells me: "cannot find -lglfw". Should I install glfw separately? And where (in order to have GNAT finding the right .o or .dll) ? TIA

flyx commented 4 years ago

The installer does include GLFW.

The tests are not designed to be built against an installed OpenGLAda. They use the relative OpenGLAda sources instead. This means you need to set up the scenario variables properly as described in the README (Windowing_System to windows in this case).

You might want to check out the examples instead. They link against the installed OpenGLAda.

zertovitch commented 4 years ago

Thanks - actually my mistake was to use the "-develop" and not the "-examples" stuff. Impressive! Did you consider putting some screenshots on the web site? Last noob question (again for the Windows flavour): are the .exe fully standalone? Zero DLL?

flyx commented 4 years ago

Did you consider putting some screenshots on the web site?

I never did because there's nothing distinctive about them; i.e. they would look exactly the same in any other language with OpenGL binding. However, when I think about it, it still shows what's possible with OpenGLAda.

are the .exe fully standalone?

If you use text rendering, you will need the freetype.dll file that's installed into the GNAT lib folder by the installer. GLFW is linked into the exe as static library. freetype is not linked as static library because there's no official source for a static MinGW freetype library and I don't know enough details to create it myself. If you are able to compile a static freetype library, you can link that and have an exe that doesn't depend on anything that is not available on a Windows system.