GLFW 3.0 Libraries and Linking

kribbyns wrote on Thursday, August 16, 2012:

Will the support for MinGW dll linking via .a files be returning in GLFW 3.0?
Or perhaps it’s already in there with some build incantation that I’m not
aware of. I can build and install the shared libraries under MinGW, but I have
to do some dlltool magic (documented at the bottom of <http://cygwin.com
/cygwin-ug-net/dll.html>) to convert glfw3dll.lib to a libglfw3.dll.a library
to link against. It works, but the process could obviously be automated.

Also, in the process of working this out, something else occurred to me along
the lines of consistency. Perhaps the Linux library could be renamed to
libGLFW, rather than libglfw3. This would bring it in line with the other GL
related libraries, avoid the 3 at the end, and still not clash with the 2.x
series library. On case-insensitive Windows, it could become libglfw32. This
doesn’t help the include file situation though. Not critically important, but
maybe worth considering in the run up to release. I just envision a nice GL
stack of gl, glu, glew, glfw. Maybe a glcw too if the context stuff is broken
out into its own library :wink:

elmindreda wrote on Thursday, August 16, 2012:

The glfw3dll.lib file created by MinGW should already be in the correct
format, but I have updated the build files to name it glfw3dll.a when using
MinGW.

The GLFW shared library is renamed to libglfw.so.3.0 when installed, with
symlinks added. Renaming it to libGLFW.so would indeed avoid clashes with GLFW
2.x, but wouldn’t work once it’s time for GLFW 4.

As for header file names, Khronos is moving in a similar direction with their
gl3.h for GL3 and GLES3.

kribbyns wrote on Thursday, August 16, 2012:

The glfw3dll.lib file created by MinGW should already be in the correct
format, but I have updated the build files to name it glfw3dll.a when using
MinGW.

I figured it was something simpler than what I was doing to get a .a file.
Thanks!

The GLFW shared library is renamed to libglfw.so.3.0 when installed, with
symlinks added. Renaming it to libGLFW.so would indeed avoid clashes with GLFW
2.x, but wouldn’t work once it’s time for GLFW 4.

Wouldn’t libGLFW.so.3.0 become libGLFW.so.4.0? Though, it would probably still
be a problem for GLFW 4 on Windows, but I guess it just depends if the API/ABI
is going to be overhauled again, or just extended. In the case of compatible
extension, you might not need a new library name?

As for header file names, Khronos is moving in a similar direction with
their gl3.h for GL3 and GLES3.

I considered that too. Not a problem either way.

kribbyns wrote on Thursday, August 23, 2012:

I’m compiling from the github repo wih the library renaming and mingw can’t
find it. I have to add a ‘lib’ prefix to the .a file.