[ 21%] Building CXX object components/CMakeFiles/components.dir/sdlutil/sdlcursormanager.cpp.o
/home/derrick/games/OpenMW/openmw/components/sdlutil/sdlinputwrapper.cpp: In member function ‘void SDLUtil::InputWrapper::capture(bool)’:
/home/derrick/games/OpenMW/openmw/components/sdlutil/sdlinputwrapper.cpp:113:22: error: ‘SDL_KEYMAPCHANGED’ was not declared in this scope
case SDL_KEYMAPCHANGED:
^
[ 21%] Building CXX object components/CMakeFiles/components.dir/version/version.cpp.o
[ 21%] Building CXX object components/CMakeFiles/components.dir/fallback/fallback.cpp.o
make[2]: *** [components/CMakeFiles/components.dir/sdlutil/sdlinputwrapper.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [components/CMakeFiles/components.dir/all] Error 2
make: *** [all] Error 2
SDL_KEYMAPCHANGED was added in SDL 2.0.4, so you can try to use it or later versions. Google says Trusty uses the 2.0.2.
The only place which uses this event is here.
But anyway this behaviour is strange since this code should be omitted by preprocessor if you have the old SDL.
Maybe a some kind of false-detection involved.