I'm trying to build 4.0.2 on linux after checking out from git. I've been able to build from about 4.0-4200 onwards using cmake, make, sudo make install just fine but in order to do some testing I wanted to compile older revisions and I'm getting all kinds of errors in cmake and then the build fails. It goes through some -Wshadow warnings which are no big deal and then it gets to "target common" and spits out this nonsense:
I'm not completely new to compiler errors but this just makes no sense at all to me, maybe my version of g++/gcc is too new and causing problems? Ultimately it's not a huge deal but I wanted to do some testing of revisions around 4.0-1000 and it's kinda depressing that I can't get them to build properly when the newer revisions build perfectly fine. Anyone know what's going on, or know how to get it to compile properly?
Code:
[ 20%] Building CXX object Source/Core/Common/CMakeFiles/common.dir/Src/BreakPoints.cpp.o
In file included from /usr/lib/gcc/x86_64-linux-gnu/4.9/include/x86intrin.h:37:0,
from /usr/include/x86_64-linux-gnu/c++/4.9/bits/opt_random.h:33,
from /usr/include/c++/4.9/random:50,
from /usr/include/c++/4.9/bits/stl_algo.h:66,
from /usr/include/c++/4.9/algorithm:62,
from /home/dolphin-emu-test/Source/Core/Common/Src/BreakPoints.cpp:11:
/usr/lib/gcc/x86_64-linux-gnu/4.9/include/tmmintrin.h: In function ‘__m128i _mm_shuffle_epi8(__m128i, __m128i)’:
/usr/lib/gcc/x86_64-linux-gnu/4.9/include/tmmintrin.h:136:1: error: redefinition of ‘__m128i _mm_shuffle_epi8(__m128i, __m128i)’
_mm_shuffle_epi8 (__m128i __X, __m128i __Y)
^
In file included from /home/dolphin-emu-test/Source/Core/Common/Src/Common.h:49:0,
from /home/dolphin-emu-test/Source/Core/Common/Src/BreakPoints.cpp:5:
/home/dolphin-emu-test/Source/Core/Common/Src/CommonFuncs.h:36:1: note: ‘__m128i _mm_shuffle_epi8(__m128i, __m128i)’ previously defined here
_mm_shuffle_epi8(__m128i a, __m128i mask)
^
Source/Core/Common/CMakeFiles/common.dir/build.make:54: recipe for target 'Source/Core/Common/CMakeFiles/common.dir/Src/BreakPoints.cpp.o' failed
make[2]: *** [Source/Core/Common/CMakeFiles/common.dir/Src/BreakPoints.cpp.o] Error 1
CMakeFiles/Makefile2:641: recipe for target 'Source/Core/Common/CMakeFiles/common.dir/all' failed
make[1]: *** [Source/Core/Common/CMakeFiles/common.dir/all] Error 2
Makefile:133: recipe for target 'all' failed
make: *** [all] Error 2
I'm not completely new to compiler errors but this just makes no sense at all to me, maybe my version of g++/gcc is too new and causing problems? Ultimately it's not a huge deal but I wanted to do some testing of revisions around 4.0-1000 and it's kinda depressing that I can't get them to build properly when the newer revisions build perfectly fine. Anyone know what's going on, or know how to get it to compile properly?