REGoth-project / REGoth

OpenSource-Reimplementation of the zEngine, used by the game "Gothic"
GNU General Public License v3.0
630 stars 63 forks source link

Problem with compilation under GCC 8.2.1, Windows #370

Open HawkDeath opened 5 years ago

HawkDeath commented 5 years ago

Hey, I try compile REGoth under GCC 8.2.1. In CameraController.cpp is a problem with the order of includes. See log below. After a change, an order of includes (move #include "" after #include <>) resolve a problem.

Have you any code rules ? I think this resolve a problems like this.

Long version: https://pastebin.com/Y4cVNJM2 Short version: [74%] Building CXX object CMakeFiles/engine.dir/src/logic/CameraController.cpp.obj In file included from C:/msys64/mingw64/include/c++/8.2.1/chrono:42, from C:/msys64/mingw64/include/c++/8.2.1/thread:38, from C:/projects/git-repos/REGoth/src/audio/AudioWorld.h:5, from C:/projects/git-repos/REGoth/src/logic/messages/EventMessage.h:6, from C:/projects/git-repos/REGoth/src/logic/messages/EventManager.h:5, from C:/projects/git-repos/REGoth/src/logic/Controller.h:7, from C:/projects/git-repos/REGoth/src/logic/CameraController.h:2, from C:/projects/git-repos/REGoth/src/logic/CameraController.cpp:5: C:/msys64/mingw64/include/c++/8.2.1/bits/parse_numbers.h:53:21: error: expected nested-name-specifier before "=" token

markusobi commented 5 years ago

there seems to be problems with the BGFX headers. See this issue: https://github.com/REGoth-project/REGoth/issues/217 bgfx + parse_numbers.h seems to cause problems with mingw

markusobi commented 5 years ago

This line made your code break: https://github.com/bkaradzic/bx/blob/4b4b3e74db9281c90f5c190a7670444ad523f51b/include/compat/mingw/sal.h#L15

macros are an absolute nogo for headers.

HawkDeath commented 5 years ago

Thanks, I removed a #define __valid from ./lib/bgfx-cmake/bx/include/compat/mingw/sal.h and thats working.