Forums
Latest GLM updates will not work on C++11 - Printable Version

+- Forums (http://www.scratchpadgames.net/forums)
+-- Forum: Main Forums (http://www.scratchpadgames.net/forums/forumdisplay.php?fid=1)
+--- Forum: Fundamentals Errata/Questions (http://www.scratchpadgames.net/forums/forumdisplay.php?fid=3)
+--- Thread: Latest GLM updates will not work on C++11 (/showthread.php?tid=301)



Latest GLM updates will not work on C++11 - Brian Beuken - 12-27-2018

Ah its sad day, but one that has to come sometimes. There is an issue with the latest updates of the GLM libs which we need to take account of, it may cause some problems on some SBC's depending on the version of GNU Compiler they have access to.
I've tested most though and they are fine so far.

GLM no longer works on C++11 so you need to compile using C++14. None of the code actually changes in any way, its just that the 2 versions of C++ have slightly different understandings of the keyword constexpr const which is used in GLM
The current build of GLM is built to C++14 standard and therefore if you try to build with C++11 you get a whole screen-full of warnings and errors.

The fix is just to ensure you build with C++14

Alas poor C++11, just as I was planning to learn how to use you, you were replaced Wink


RE: Latest GLM updates will not work on C++11 - Brian Beuken - 12-27-2018

better make this sticky as there may be confusion from people just starting out


RE: Latest GLM updates will not work on C++11 - jomoengineer - 12-27-2018

Interesting since C++14 only expands on the use of constexpr and did not eliminate anything from C++11. Mainly C++14 adds the use of deducing multiple return types with all functions and not just lambdas and a single return statement.

If the code was written in accordance with the C++14 standard, then I could see where compiling with C++11 would cause an issue. It would have been nice if they added a guard to check if the code was being compiled for C++11 or C++14 and later with C++17 and beyond so both could exist.

Nice catch though.