Vigilante-Game-Framework icon indicating copy to clipboard operation
Vigilante-Game-Framework copied to clipboard

Cmake version required is too new

Open StephenLynx opened this issue 7 years ago • 10 comments

CMake Error at CMakeLists.txt:1 (cmake_minimum_required): CMake 3.1.0 or higher is required. You are running version 2.8.12.2

Can't even build it on CentOS.

StephenLynx avatar Mar 14 '18 19:03 StephenLynx

CMake 2.8.12 is nearly 5 years old, time to upgrade! The current stable version is 3.10! CMake is VERY EASY to compile and install yourself.

aggsol avatar Mar 15 '18 07:03 aggsol

You are looking it through the wrong perspective. Is there any feature this project uses that is not on 2.8.12?

StephenLynx avatar Mar 15 '18 12:03 StephenLynx

VFrame/V3DObject.cpp:39:48: error: ‘fmodf’ was not declared in this scope Rotation.x = fmodf(Rotation.x + 360.0f, 360.0f);

Using gcc 6.

StephenLynx avatar Mar 15 '18 13:03 StephenLynx

VFrame/VBase.cpp:7:18: fatal error: term.h: No such file or directory #include <term.h>

StephenLynx avatar Mar 15 '18 13:03 StephenLynx

VFrame/VTimer.cpp:43:37: error: ‘find’ is not a member of ‘std’ std::vector<VTimer*>::iterator i = std::find(timers.begin(), timers.end(), timer);

StephenLynx avatar Mar 15 '18 13:03 StephenLynx

/opt/rh/devtoolset-6/root/usr/include/c++/6.3.1/ext/new_allocator.h:120:4: error: invalid initialization of non-const reference of type ‘glm::vec3& {aka glm::vec<3, float, (glm::qualifier)0u>&}’ from an rvalue of type ‘glm::vec<3, float, (glm::qualifier)0u>’ { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); } ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /home/sergio/Vigilante-Game-Framework/Example/../Example/States.h:19:0, from /home/sergio/Vigilante-Game-Framework/Example/main.cpp:2: /home/sergio/Vigilante-Game-Framework/Example/../Example/../VFrame/V3DModel.h:104:2: note: initializing argument 1 of ‘V3DVertex::V3DVertex(glm::vec3&, glm::vec3&, glm::vec4&, glm::vec2&)’ V3DVertex(glm::vec3& pos, glm::vec3& norm, glm::vec4& tint, glm::vec2& tex) : position(pos), normal(norm), color(tint), texCoord(tex) {}

StephenLynx avatar Mar 15 '18 13:03 StephenLynx

The Cmake file is in a poor state but should at least support CMake 3.8 that introduced cxx_std_14

aggsol avatar Mar 16 '18 07:03 aggsol

This project doesn't use that.

StephenLynx avatar Mar 16 '18 12:03 StephenLynx

I've been making a number of updates to get the framework to build with SFML 2.5.0, however looking through some of the issues can be resolved by including some headers.

For V3DObject, add #include #include <cmath>, as that should have the definition of fmodf. For VTimer, add #include <algorithm> as that should have the find function. The V3DVertex one might just need the keyword const added to each of the parameters.

gamepopper avatar Jun 03 '18 22:06 gamepopper

As for "term.h" include, you need to install libncurses

sudo apt-get install libncurses5-dev

So clearly it needs to be included as a dependency.

gamepopper avatar Jun 04 '18 19:06 gamepopper