SSE Denormalised Floats Issue
Issue #32
closed
In the current build instructions for Linux, the recommended qmake
command is:
qmake main.pro -r -spec linux-g++-64 CONFIG+=release
However, in Builds/QtCreator/Defaults.pri
, you conditionally change the march
target between native
and k8
, according to whether the native
build flag is mentioned. Thus, it is not defined. This causes g++
to complain:
Source/EmberAnimate/EmberAnimate.cpp:599:30: error: ‘_MM_DENORMALS_ZERO_ON’ was not declared in this scope
599 | _MM_SET_DENORMALS_ZERO_MODE(_MM_DENORMALS_ZERO_ON);
I believe the k8
target doesn’t have the requisite SSE extensions in order for these denormalised float functions to be defined. You already define an alternative for Mac targets. I’m not sure if you can repurpose this for Linux targets without SSE.
Otherwise,
qmake main.pro -r -spec linux-g++-64 CONFIG+="release native"
might be a better command for the docs, assuming the device has SSE.
Comments (3)
-
repo owner -
repo owner - changed status to resolved
-
repo owner - changed status to closed
- Log in to comment
I’ve updated the docs, as well as my internal build script that I use to make releases. Thank you.
For historical background, I got a lot of help from other people when making the build and installation steps for non-Windows OSes. So I’m not even really sure what that part does, but I’ll take your word for it.