sudo apt-get install -y libsdl2-dev libboost-system-dev libboost-filesystem-dev libboost-date-time-dev libboost-locale-dev libfreeimage-dev libfreetype6-dev libeigen3-dev libcurl4-openssl-dev libasound2-dev libgl1-mesa-dev build-essential cmake gitBaixe o código fonte:
git clone https://github.com/Aloshi/EmulationStation
cd EmulationStation
git checkout unstable
Aplique o seguinte patch*:
patch -p1 < /home/dan/emulationstation-2.0.1a-float.patch
Compile e instale:
cmake .
make
sudo make install
Bom divertimento!
*Se você não aplicar o patch irá receber a seguinte mensagem de erro:
In file included from /tmp/a/EmulationStation/es-core/src/Renderer_draw_gl.cpp:9:0:/tmp/a/EmulationStation/es-core/src/Util.h:18:22: error: ‘float round(float)’ conflicts with a previous declaration float round(float num); ^In file included from /usr/include/c++/6/complex:44:0, from /usr/include/eigen3/Eigen/Core:80, from /usr/include/eigen3/Eigen/Dense:1, from /tmp/a/EmulationStation/es-core/src/Renderer.h:7, from /tmp/a/EmulationStation/es-core/src/Renderer_draw_gl.cpp:2:/usr/include/c++/6/cmath:1790:3: note: previous declaration ‘constexpr float std::round(float)’ round(float __x) ^~~~~/tmp/a/EmulationStation/es-core/src/Renderer_draw_gl.cpp: In function ‘void Renderer::drawRect(float, float, float, float, unsigned int, GLenum, GLenum)’:/tmp/a/EmulationStation/es-core/src/Renderer_draw_gl.cpp:90:24: error: call of overloaded ‘round(float&)’ is ambiguous drawRect((int)round(x), (int)round(y), (int)round(w), (int)round(h), color, blend_sfactor, blend_dfactor); ^In file included from /usr/include/features.h:364:0, from /usr/include/x86_64-linux-gnu/c++/6/bits/os_defines.h:39, from /usr/include/x86_64-linux-gnu/c++/6/bits/c++config.h:507, from /usr/include/c++/6/string:38, from /tmp/a/EmulationStation/es-core/src/platform.h:18, from /tmp/a/EmulationStation/es-core/src/Renderer_draw_gl.cpp:1:/usr/include/x86_64-linux-gnu/bits/mathcalls.h:326:1: note: candidate: double round(double) __MATHCALLX (round,, (_Mdouble_ __x), (__const__)); ^In file included from /usr/include/c++/6/complex:44:0, from /usr/include/eigen3/Eigen/Core:80, from /usr/include/eigen3/Eigen/Dense:1, from /tmp/a/EmulationStation/es-core/src/Renderer.h:7, from /tmp/a/EmulationStation/es-core/src/Renderer_draw_gl.cpp:2:/usr/include/c++/6/cmath:1794:3: note: candidate: constexpr long double std::round(long double) round(long double __x) ^~~~~/usr/include/c++/6/cmath:1790:3: note: candidate: constexpr float std::round(float) round(float __x) ^~~~~In file included from /tmp/a/EmulationStation/es-core/src/Renderer_draw_gl.cpp:9:0:/tmp/a/EmulationStation/es-core/src/Util.h:18:7: note: candidate: float round(float) float round(float num); ^~~~~/tmp/a/EmulationStation/es-core/src/Renderer_draw_gl.cpp:90:39: error: call of overloaded ‘round(float&)’ is ambiguous drawRect((int)round(x), (int)round(y), (int)round(w), (int)round(h), color, blend_sfactor, blend_dfactor); ^In file included from /usr/include/features.h:364:0, from /usr/include/x86_64-linux-gnu/c++/6/bits/os_defines.h:39, from /usr/include/x86_64-linux-gnu/c++/6/bits/c++config.h:507, from /usr/include/c++/6/string:38, from /tmp/a/EmulationStation/es-core/src/platform.h:18, from /tmp/a/EmulationStation/es-core/src/Renderer_draw_gl.cpp:1:/usr/include/x86_64-linux-gnu/bits/mathcalls.h:326:1: note: candidate: double round(double) __MATHCALLX (round,, (_Mdouble_ __x), (__const__)); ^In file included from /usr/include/c++/6/complex:44:0, from /usr/include/eigen3/Eigen/Core:80, from /usr/include/eigen3/Eigen/Dense:1, from /tmp/a/EmulationStation/es-core/src/Renderer.h:7, from /tmp/a/EmulationStation/es-core/src/Renderer_draw_gl.cpp:2:/usr/include/c++/6/cmath:1794:3: note: candidate: constexpr long double std::round(long double) round(long double __x) ^~~~~/usr/include/c++/6/cmath:1790:3: note: candidate: constexpr float std::round(float) round(float __x) ^~~~~In file included from /tmp/a/EmulationStation/es-core/src/Renderer_draw_gl.cpp:9:0:/tmp/a/EmulationStation/es-core/src/Util.h:18:7: note: candidate: float round(float) float round(float num); ^~~~~/tmp/a/EmulationStation/es-core/src/Renderer_draw_gl.cpp:90:54: error: call of overloaded ‘round(float&)’ is ambiguous drawRect((int)round(x), (int)round(y), (int)round(w), (int)round(h), color, blend_sfactor, blend_dfactor); ^In file included from /usr/include/features.h:364:0, from /usr/include/x86_64-linux-gnu/c++/6/bits/os_defines.h:39, from /usr/include/x86_64-linux-gnu/c++/6/bits/c++config.h:507, from /usr/include/c++/6/string:38, from /tmp/a/EmulationStation/es-core/src/platform.h:18, from /tmp/a/EmulationStation/es-core/src/Renderer_draw_gl.cpp:1:/usr/include/x86_64-linux-gnu/bits/mathcalls.h:326:1: note: candidate: double round(double) __MATHCALLX (round,, (_Mdouble_ __x), (__const__)); ^In file included from /usr/include/c++/6/complex:44:0, from /usr/include/eigen3/Eigen/Core:80, from /usr/include/eigen3/Eigen/Dense:1, from /tmp/a/EmulationStation/es-core/src/Renderer.h:7, from /tmp/a/EmulationStation/es-core/src/Renderer_draw_gl.cpp:2:/usr/include/c++/6/cmath:1794:3: note: candidate: constexpr long double std::round(long double) round(long double __x) ^~~~~/usr/include/c++/6/cmath:1790:3: note: candidate: constexpr float std::round(float) round(float __x) ^~~~~In file included from /tmp/a/EmulationStation/es-core/src/Renderer_draw_gl.cpp:9:0:/tmp/a/EmulationStation/es-core/src/Util.h:18:7: note: candidate: float round(float) float round(float num); ^~~~~/tmp/a/EmulationStation/es-core/src/Renderer_draw_gl.cpp:90:69: error: call of overloaded ‘round(float&)’ is ambiguous drawRect((int)round(x), (int)round(y), (int)round(w), (int)round(h), color, blend_sfactor, blend_dfactor); ^In file included from /usr/include/features.h:364:0, from /usr/include/x86_64-linux-gnu/c++/6/bits/os_defines.h:39, from /usr/include/x86_64-linux-gnu/c++/6/bits/c++config.h:507, from /usr/include/c++/6/string:38, from /tmp/a/EmulationStation/es-core/src/platform.h:18, from /tmp/a/EmulationStation/es-core/src/Renderer_draw_gl.cpp:1:/usr/include/x86_64-linux-gnu/bits/mathcalls.h:326:1: note: candidate: double round(double) __MATHCALLX (round,, (_Mdouble_ __x), (__const__)); ^In file included from /usr/include/c++/6/complex:44:0, from /usr/include/eigen3/Eigen/Core:80, from /usr/include/eigen3/Eigen/Dense:1, from /tmp/a/EmulationStation/es-core/src/Renderer.h:7, from /tmp/a/EmulationStation/es-core/src/Renderer_draw_gl.cpp:2:/usr/include/c++/6/cmath:1794:3: note: candidate: constexpr long double std::round(long double) round(long double __x) ^~~~~/usr/include/c++/6/cmath:1790:3: note: candidate: constexpr float std::round(float) round(float __x) ^~~~~In file included from /tmp/a/EmulationStation/es-core/src/Renderer_draw_gl.cpp:9:0:/tmp/a/EmulationStation/es-core/src/Util.h:18:7: note: candidate: float round(float) float round(float num); ^~~~~es-core/CMakeFiles/es-core.dir/build.make:278: recipe for target 'es-core/CMakeFiles/es-core.dir/src/Renderer_draw_gl.cpp.o' failedmake[2]: *** [es-core/CMakeFiles/es-core.dir/src/Renderer_draw_gl.cpp.o] Error 1CMakeFiles/Makefile2:217: recipe for target 'es-core/CMakeFiles/es-core.dir/all' failedmake[1]: *** [es-core/CMakeFiles/es-core.dir/all] Error 2Makefile:149: recipe for target 'all' failedmake: *** [all] Error 2
Nenhum comentário:
Postar um comentário