I encountered the difficulties in compiling the flashpca2 from the source.
The command used is "make all EIGEN_INC=/home/nwl15/software/eigen3.3.4/eigen-eigen-5a0156e40feb BOOST_INC=/home/nwl15/software/boost_1_61_0/userlocal/include BOOST_LIB=/home/nwl15/software/boost_1_61_0/userlocal/lib
The error messages I got are as follows.
g++ -I/home/nwl15/software/spectra-0.5.0/include -I/home/nwl15/software/boost_1_61_0/userlocal/include -I/home/nwl15/software/eigen3.3.4/eigen-eigen-5a0156e40feb -march=native -fopenmp -std=c++0x -O3 -DNDEBUG -DVERSION=\"2.0\" -funroll-loops -ftree-vectorize -ffast-math -c flashpca.cpp -o flashpca.o
flashpca.cpp: In function ‘int main(int, char**)’:
flashpca.cpp:781: error: call of overloaded ‘to_string(int)’ is ambiguous
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/basic_string.h:2604: note: candidates are: std::string std::to_string(long long int)
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/basic_string.h:2610: note: std::string std::to_string(long long unsigned int)
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/basic_string.h:2616: note: std::string std::to_string(long double)
flashpca.cpp:788: error: call of overloaded ‘to_string(int)’ is ambiguous
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/basic_string.h:2604: note: candidates are: std::string std::to_string(long long int)
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/basic_string.h:2610: note: std::string std::to_string(long long unsigned int)
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/basic_string.h:2616: note: std::string std::to_string(long double)
flashpca.cpp:811: error: call of overloaded ‘to_string(int)’ is ambiguous
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/basic_string.h:2604: note: candidates are: std::string std::to_string(long long int)
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/basic_string.h:2610: note: std::string std::to_string(long long unsigned int)
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/basic_string.h:2616: note: std::string std::to_string(long double)
flashpca.cpp:866: error: call of overloaded ‘to_string(int)’ is ambiguous
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/basic_string.h:2604: note: candidates are: std::string std::to_string(long long int)
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/basic_string.h:2610: note: std::string std::to_string(long long unsigned int)
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/basic_string.h:2616: note: std::string std::to_string(long double)
make: *** [flashpca.o] Error 1
Thanks in advance for the help.