I got one error during the configure step after I upgrade all dependencies, and there were more error during the build step.
Here is the configure log:
REPORT:
MRtrix build type requested: release version
REPORT: Detecting OS: linux
REPORT: Looking for compiler [clang++]:
EXEC <<
CMD: clang++ --version
EXIT: 0
STDOUT:
clang version 3.8.0-2ubuntu4 (tags/RELEASE_380/final)
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin
>>
REPORT: clang version 3.8.0-2ubuntu4 (tags/RELEASE_380/final)
REPORT: Checking for C++11 compliance:
COMPILE /tmp/tmpztp_xyrq.cpp:
---
#include <cstddef>
struct Base {
Base (int);
};
struct Derived : Base {
using Base::Base;
};
int main() {
Derived D (int); // check for contructor inheritance
return 0;
}
---
EXEC <<
CMD: clang++ -c -std=c++11 -DMRTRIX_BUILD_TYPE="release version" -pthread -fPIC /tmp/tmpztp_xyrq.cpp -o /tmp/tmpztp_xyrq.o
EXIT: 0
>>
EXEC <<
CMD: clang++ /tmp/tmpztp_xyrq.o -Wl,--sort-common,--as-needed -pthread -o a.out
EXIT: 0
>>
EXEC <<
CMD: ./a.out
EXIT: 0
>>
REPORT: ok
REPORT: Checking shared library generation:
EXEC <<
CMD: clang++ -c -std=c++11 -DMRTRIX_BUILD_TYPE="release version" -pthread -fPIC /tmp/tmpihqtmh_u.cpp -o /tmp/tmpihqtmh_u.o
EXIT: 0
>>
EXEC <<
CMD: clang++ /tmp/tmpihqtmh_u.o -shared -Wl,--sort-common,--as-needed -pthread -o libtest.so
EXIT: 0
>>
REPORT: ok
REPORT: Detecting pointer size:
COMPILE /tmp/tmpbtmxkh8g.cpp:
---
#include <iostream>
int main() {
std::cout << sizeof(void*);
return (0);
}
---
EXEC <<
CMD: clang++ -c -std=c++11 -DMRTRIX_BUILD_TYPE="release version" -pthread -fPIC /tmp/tmpbtmxkh8g.cpp -o /tmp/tmpbtmxkh8g.o
EXIT: 0
>>
EXEC <<
CMD: clang++ /tmp/tmpbtmxkh8g.o -Wl,--sort-common,--as-needed -pthread -o a.out
EXIT: 0
>>
EXEC <<
CMD: ./a.out
EXIT: 0
STDOUT:
8
>>
REPORT: 64 bit
REPORT: Detecting byte order:
REPORT: little-endian
REPORT: Checking for variable-length array support:
COMPILE /tmp/tmpadqhq37n.cpp:
---
int main(int argc, char* argv[]) {
int x[argc];
return 0;
}
---
EXEC <<
CMD: clang++ -c -std=c++11 -DMRTRIX_BUILD_TYPE="release version" -pthread -fPIC -DMRTRIX_WORD64 /tmp/tmpadqhq37n.cpp -o /tmp/tmpadqhq37n.o
EXIT: 0
>>
EXEC <<
CMD: clang++ /tmp/tmpadqhq37n.o -Wl,--sort-common,--as-needed -pthread -o a.out
EXIT: 0
>>
EXEC <<
CMD: ./a.out
EXIT: 0
>>
REPORT: ok
REPORT: Checking for non-POD variable-length array support:
COMPILE /tmp/tmpcexk3cke.cpp:
---
#include <string>
class X {
int x;
double y;
std::string s;
};
int main(int argc, char* argv[]) {
X x[argc];
return 0;
}
---
EXEC <<
CMD: clang++ -c -std=c++11 -DMRTRIX_BUILD_TYPE="release version" -pthread -fPIC -DMRTRIX_WORD64 /tmp/tmpcexk3cke.cpp -o /tmp/tmpcexk3cke.o
EXIT: 1
STDERR:
/tmp/tmpcexk3cke.cpp:11:6: error: variable length array of non-POD element type 'X'
X x[argc];
^
1 error generated.
>>
error deleting temporary file "/tmp/tmpcexk3cke.o": No such file or directory
REPORT: not found
REPORT: Checking for ::max_align_t:
COMPILE /tmp/tmpbqhk18bx.cpp:
---
#include <iostream>
#include <cstddef>
using ::max_align_t;
int main() {
std::cout << alignof (max_align_t) << " bytes\n";
return 0;
}
---
EXEC <<
CMD: clang++ -c -std=c++11 -DMRTRIX_BUILD_TYPE="release version" -pthread -fPIC -DMRTRIX_WORD64 -DMRTRIX_NO_NON_POD_VLA /tmp/tmpbqhk18bx.cpp -o /tmp/tmpbqhk18bx.o
EXIT: 0
>>
EXEC <<
CMD: clang++ /tmp/tmpbqhk18bx.o -Wl,--sort-common,--as-needed -pthread -o a.out
EXIT: 0
>>
EXEC <<
CMD: ./a.out
EXIT: 0
STDOUT:
16 bytes
>>
REPORT: 16 bytes
REPORT: Checking for std::max_align_t:
COMPILE /tmp/tmp__q1zj9u.cpp:
---
#include <iostream>
#include <cstddef>
using std::max_align_t;
int main() {
std::cout << alignof (max_align_t) << " bytes\n";
return 0;
}
---
EXEC <<
CMD: clang++ -c -std=c++11 -DMRTRIX_BUILD_TYPE="release version" -pthread -fPIC -DMRTRIX_WORD64 -DMRTRIX_NO_NON_POD_VLA /tmp/tmp__q1zj9u.cpp -o /tmp/tmp__q1zj9u.o
EXIT: 0
>>
EXEC <<
CMD: clang++ /tmp/tmp__q1zj9u.o -Wl,--sort-common,--as-needed -pthread -o a.out
EXIT: 0
>>
EXEC <<
CMD: ./a.out
EXIT: 0
STDOUT:
16 bytes
>>
REPORT: 16 bytes
EXEC <<
CMD: pkg-config --cflags eigen3
EXIT: 0
STDOUT:
-I/usr/local/include/eigen3
>>
REPORT: Checking for Eigen3 library:
COMPILE /tmp/tmplcgzgjhj.cpp:
---
#include <cstddef>
#include <Eigen/Core>
#include <iostream>
int main (int argc, char* argv[]) {
std::cout << EIGEN_WORLD_VERSION << "." << EIGEN_MAJOR_VERSION << "." << EIGEN_MINOR_VERSION << "\n";
return 0;
}
---
EXEC <<
CMD: clang++ -c -std=c++11 -DMRTRIX_BUILD_TYPE="release version" -pthread -fPIC -DMRTRIX_WORD64 -DMRTRIX_NO_NON_POD_VLA -isystem /usr/local/include/eigen3 /tmp/tmplcgzgjhj.cpp -o /tmp/tmplcgzgjhj.o
EXIT: 0
>>
EXEC <<
CMD: clang++ /tmp/tmplcgzgjhj.o -Wl,--sort-common,--as-needed -pthread -o a.out
EXIT: 0
>>
EXEC <<
CMD: ./a.out
EXIT: 0
STDOUT:
3.3.90
>>
REPORT: 3.3.90
EXEC <<
CMD: pkg-config --cflags zlib
EXIT: 0
>>
EXEC <<
CMD: pkg-config --libs zlib
EXIT: 0
STDOUT:
-lz
>>
REPORT: Checking for zlib compression library:
COMPILE /tmp/tmprlun2epm.cpp:
---
#include <iostream>
#include <zlib.h>
int main() {
std::cout << zlibVersion();
return (0);
}
---
EXEC <<
CMD: clang++ -c -std=c++11 -DMRTRIX_BUILD_TYPE="release version" -pthread -fPIC -DMRTRIX_WORD64 -DMRTRIX_NO_NON_POD_VLA /tmp/tmprlun2epm.cpp -o /tmp/tmprlun2epm.o
EXIT: 0
>>
EXEC <<
CMD: clang++ /tmp/tmprlun2epm.o -Wl,--sort-common,--as-needed -pthread -lz -o a.out
EXIT: 0
>>
EXEC <<
CMD: ./a.out
EXIT: 0
STDOUT:
1.2.8
>>
REPORT: 1.2.8
REPORT: Checking for "JSON for Modern C++" requirements:
COMPILE /tmp/tmpz8r5g0ln.cpp:
---
#include "file/json.h"
int main (int argc, char* argv[])
{
nlohmann::json json;
json["key"] = "value";
}
---
EXEC <<
CMD: clang++ -c -std=c++11 -DMRTRIX_BUILD_TYPE="release version" -pthread -fPIC -DMRTRIX_WORD64 -DMRTRIX_NO_NON_POD_VLA -I/home/user/mrtrix3/core /tmp/tmpz8r5g0ln.cpp -o /tmp/tmpz8r5g0ln.o
EXIT: 0
>>
EXEC <<
CMD: clang++ /tmp/tmpz8r5g0ln.o -Wl,--sort-common,--as-needed -pthread -lz -o a.out
EXIT: 0
>>
EXEC <<
CMD: ./a.out
EXIT: 0
>>
REPORT: ok
EXEC <<
CMD: pkg-config --cflags libtiff-4
EXIT: 0
STDOUT:
-I/usr/include/x86_64-linux-gnu
>>
EXEC <<
CMD: pkg-config --libs libtiff-4
EXIT: 0
STDOUT:
-ltiff
>>
REPORT: Checking for TIFF library:
COMPILE /tmp/tmp5bqawnki.cpp:
---
#include <iostream>
#include <tiffio.h>
int main() {
std::cout << TIFFGetVersion();
return (0);
}
---
EXEC <<
CMD: clang++ -c -std=c++11 -DMRTRIX_BUILD_TYPE="release version" -pthread -fPIC -DMRTRIX_WORD64 -DMRTRIX_NO_NON_POD_VLA -isystem /usr/include/x86_64-linux-gnu /tmp/tmp5bqawnki.cpp -o /tmp/tmp5bqawnki.o
EXIT: 0
>>
EXEC <<
CMD: clang++ /tmp/tmp5bqawnki.o -Wl,--sort-common,--as-needed -pthread -lz -ltiff -o a.out
EXIT: 0
>>
EXEC <<
CMD: ./a.out
EXIT: 0
STDOUT:
LIBTIFF, Version 4.0.6
Copyright (c) 1988-1996 Sam Leffler
Copyright (c) 1991-1996 Silicon Graphics, Inc.
>>
REPORT: LIBTIFF, Version 4.0.6
EXEC <<
CMD: pkg-config --cflags fftw3
EXIT: 0
>>
EXEC <<
CMD: pkg-config --libs fftw3
EXIT: 0
STDOUT:
-lfftw3
>>
REPORT: Checking for FFTW library:
COMPILE /tmp/tmpz24aqul8.cpp:
---
#include <iostream>
#include <fftw3.h>
int main() {
std::cout << fftw_version << "\n";
return (0);
}
---
EXEC <<
CMD: clang++ -c -std=c++11 -DMRTRIX_BUILD_TYPE="release version" -pthread -fPIC -DMRTRIX_WORD64 -DMRTRIX_NO_NON_POD_VLA -DMRTRIX_TIFF_SUPPORT -isystem /usr/include/x86_64-linux-gnu /tmp/tmpz24aqul8.cpp -o /tmp/tmpz24aqul8.o
EXIT: 0
>>
EXEC <<
CMD: clang++ /tmp/tmpz24aqul8.o -Wl,--sort-common,--as-needed -pthread -lz -ltiff -lfftw3 -o a.out
EXIT: 0
>>
EXEC <<
CMD: ./a.out
EXIT: 0
STDOUT:
fftw-3.3.4-sse2-avx
>>
REPORT: fftw-3.3.4-sse2-avx
REPORT: Checking for Qt moc:
EXEC <<
CMD: moc -v
EXIT: 1
STDERR:
Qt Meta Object Compiler version 63 (Qt 4.8.7)
>>
REPORT: moc (version 4.8.7)
REPORT: Checking for Qt qmake:
EXEC <<
CMD: qmake -v
EXIT: 0
STDOUT:
QMake version 2.01a
Using Qt version 4.8.7 in /usr/lib/x86_64-linux-gnu
>>
REPORT: qmake (version 4.8.7)
REPORT: Checking for Qt rcc:
EXEC <<
CMD: rcc -v
EXIT: 1
STDERR:
Qt Resource Compiler version 4.8.7
>>
REPORT: rcc (version 4.8.7)
REPORT: Checking for Qt:
source file "qt.h":
---
#include <QObject>
class Foo: public QObject {
Q_OBJECT;
public:
Foo();
~Foo();
public slots:
void setValue(int value);
signals:
void valueChanged (int newValue);
private:
int value_;
};
---
source file "qt.cpp":
---
#include <iostream>
#include "qt.h"
Foo::Foo() : value_ (42) { connect (this, SIGNAL(valueChanged(int)), this, SLOT(setValue(int))); }
Foo::~Foo() { std::cout << qVersion() << "\n"; }
void Foo::setValue (int value) { value_ = value; }
int main() { Foo f; }
---
project file "qt.pro":
---
CONFIG += c++11
QT += core gui opengl svg
HEADERS += qt.h
SOURCES += qt.cpp
---
EXEC <<
CMD: qmake
EXIT: 0
>>
EXEC <<
CMD: moc qt.h -o qt_moc.cpp
EXIT: 0
>>
EXEC <<
CMD: clang++ -c -std=c++11 -DMRTRIX_BUILD_TYPE="release version" -pthread -fPIC -DMRTRIX_WORD64 -DMRTRIX_NO_NON_POD_VLA -DMRTRIX_TIFF_SUPPORT -isystem /usr/include/x86_64-linux-gnu -DEIGEN_FFTW_DEFAULT -m64 -pipe -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_SVG_LIB -DQT_OPENGL_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -isystem /usr/share/qt4/mkspecs/linux-g++-64 -isystem /usr/include/qt4/QtCore -isystem /usr/include/qt4/QtGui -isystem /usr/include/qt4/QtOpenGL -isystem /usr/include/qt4/QtSvg -isystem /usr/include/qt4 -isystem /usr/X11R6/include qt.cpp -o qt.o
EXIT: 0
>>
EXEC <<
CMD: clang++ -c -std=c++11 -DMRTRIX_BUILD_TYPE="release version" -pthread -fPIC -DMRTRIX_WORD64 -DMRTRIX_NO_NON_POD_VLA -DMRTRIX_TIFF_SUPPORT -isystem /usr/include/x86_64-linux-gnu -DEIGEN_FFTW_DEFAULT -m64 -pipe -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_SVG_LIB -DQT_OPENGL_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -isystem /usr/share/qt4/mkspecs/linux-g++-64 -isystem /usr/include/qt4/QtCore -isystem /usr/include/qt4/QtGui -isystem /usr/include/qt4/QtOpenGL -isystem /usr/include/qt4/QtSvg -isystem /usr/include/qt4 -isystem /usr/X11R6/include qt_moc.cpp -o qt_moc.o
EXIT: 0
>>
EXEC <<
CMD: clang++ -Wl,--sort-common,--as-needed -pthread -lz -ltiff -lfftw3 qt_moc.o qt.o -o qt -m64 -Wl,-O1 -L/usr/lib/x86_64-linux-gnu -L/usr/X11R6/lib64 -lQtSvg -lQtOpenGL -lQtGui -lQtCore -lGL -lpthread
EXIT: 0
>>
EXEC <<
CMD: /tmp/tmp49zjrout/qt
EXIT: 0
STDOUT:
4.8.7
>>
REPORT: 4.8.7
And here is a part of the build log:
ERROR: ( 56/504) [CC] tmp/core/mrtrix.o
ERROR: ( 56/504) [CC] tmp/core/mrtrix.o
clang++ -c -std=c++11 -DMRTRIX_BUILD_TYPE="release version" -pthread -fPIC -DMRTRIX_WORD64 -DMRTRIX_NO_NON_POD_VLA -DMRTRIX_TIFF_SUPPORT -isystem /usr/include/x86_64-linux-gnu -DEIGEN_FFTW_DEFAULT -Wall -O3 -DNDEBUG -Isrc -I./core -Icmd -isystem /usr/local/include/eigen3 -DEIGEN_DONT_PARALLELIZE core/mrtrix.cpp -o tmp/core/mrtrix.o
failed with output
In file included from core/mrtrix.cpp:16:
In file included from ./core/mrtrix.h:36:
./core/types.h:319:9: error: redefinition of 'Vector3' as different kind of symbol
using Vector3 = Matrix<MR::default_type, 3, 1>;
^
/usr/local/include/eigen3/Eigen/src/Core/Matrix.h:539:1: note: previous definition is here
EIGEN_MAKE_TYPEDEFS(3, 3)
^
/usr/local/include/eigen3/Eigen/src/Core/Matrix.h:521:67: note: expanded from macro 'EIGEN_MAKE_TYPEDEFS'
template <typename Type> \
^
In file included from core/mrtrix.cpp:16:
In file included from ./core/mrtrix.h:36:
./core/types.h:320:9: error: redefinition of 'Vector4' as different kind of symbol
using Vector4 = Matrix<MR::default_type, 4, 1>;
^
/usr/local/include/eigen3/Eigen/src/Core/Matrix.h:540:1: note: previous definition is here
EIGEN_MAKE_TYPEDEFS(4, 4)
^
/usr/local/include/eigen3/Eigen/src/Core/Matrix.h:521:67: note: expanded from macro 'EIGEN_MAKE_TYPEDEFS'
template <typename Type> \
^
2 errors generated.
ERROR: ( 8/505) [CC] tmp/core/math/SH.o
ERROR: ( 8/505) [CC] tmp/core/math/SH.o
clang++ -c -std=c++11 -DMRTRIX_BUILD_TYPE="release version" -pthread -fPIC -DMRTRIX_WORD64 -DMRTRIX_NO_NON_POD_VLA -DMRTRIX_TIFF_SUPPORT -isystem /usr/include/x86_64-linux-gnu -DEIGEN_FFTW_DEFAULT -Wall -O3 -DNDEBUG -Isrc -I./core -Icmd -isystem /usr/local/include/eigen3 -DEIGEN_DONT_PARALLELIZE core/math/SH.cpp -o tmp/core/math/SH.o
failed with output
In file included from core/math/SH.cpp:16:
In file included from ./core/math/SH.h:19:
In file included from ./core/math/legendre.h:19:
In file included from ./core/math/math.h:22:
./core/types.h:319:9: error: redefinition of 'Vector3' as different kind of symbol
using Vector3 = Matrix<MR::default_type, 3, 1>;
^
/usr/local/include/eigen3/Eigen/src/Core/Matrix.h:539:1: note: previous definition is here
EIGEN_MAKE_TYPEDEFS(3, 3)
^
/usr/local/include/eigen3/Eigen/src/Core/Matrix.h:521:67: note: expanded from macro 'EIGEN_MAKE_TYPEDEFS'
template <typename Type> \
^
In file included from core/math/SH.cpp:16:
In file included from ./core/math/SH.h:19:
In file included from ./core/math/legendre.h:19:
In file included from ./core/math/math.h:22:
./core/types.h:320:9: error: redefinition of 'Vector4' as different kind of symbol
using Vector4 = Matrix<MR::default_type, 4, 1>;
^
/usr/local/include/eigen3/Eigen/src/Core/Matrix.h:540:1: note: previous definition is here
EIGEN_MAKE_TYPEDEFS(4, 4)
^
/usr/local/include/eigen3/Eigen/src/Core/Matrix.h:521:67: note: expanded from macro 'EIGEN_MAKE_TYPEDEFS'
template <typename Type> \
^
2 errors generated.
ERROR: ( 21/505) [CC] tmp/core/bitset.o
ERROR: ( 21/505) [CC] tmp/core/bitset.o
clang++ -c -std=c++11 -DMRTRIX_BUILD_TYPE="release version" -pthread -fPIC -DMRTRIX_WORD64 -DMRTRIX_NO_NON_POD_VLA -DMRTRIX_TIFF_SUPPORT -isystem /usr/include/x86_64-linux-gnu -DEIGEN_FFTW_DEFAULT -Wall -O3 -DNDEBUG -Isrc -I./core -Icmd -isystem /usr/local/include/eigen3 -DEIGEN_DONT_PARALLELIZE core/bitset.cpp -o tmp/core/bitset.o
failed with output
In file included from core/bitset.cpp:16:
In file included from ./core/bitset.h:22:
In file included from ./core/mrtrix.h:36:
./core/types.h:319:9: error: redefinition of 'Vector3' as different kind of symbol
using Vector3 = Matrix<MR::default_type, 3, 1>;
^
/usr/local/include/eigen3/Eigen/src/Core/Matrix.h:539:1: note: previous definition is here
EIGEN_MAKE_TYPEDEFS(3, 3)
^
/usr/local/include/eigen3/Eigen/src/Core/Matrix.h:521:67: note: expanded from macro 'EIGEN_MAKE_TYPEDEFS'
template <typename Type> \
^
In file included from core/bitset.cpp:16:
In file included from ./core/bitset.h:22:
In file included from ./core/mrtrix.h:36:
./core/types.h:320:9: error: redefinition of 'Vector4' as different kind of symbol
using Vector4 = Matrix<MR::default_type, 4, 1>;
^
/usr/local/include/eigen3/Eigen/src/Core/Matrix.h:540:1: note: previous definition is here
EIGEN_MAKE_TYPEDEFS(4, 4)
^
/usr/local/include/eigen3/Eigen/src/Core/Matrix.h:521:67: note: expanded from macro 'EIGEN_MAKE_TYPEDEFS'
template <typename Type> \
^
2 errors generated.
ERROR: ( 34/505) [CC] tmp/core/file/ofstream.o
ERROR: ( 34/505) [CC] tmp/core/file/ofstream.o
clang++ -c -std=c++11 -DMRTRIX_BUILD_TYPE="release version" -pthread -fPIC -DMRTRIX_WORD64 -DMRTRIX_NO_NON_POD_VLA -DMRTRIX_TIFF_SUPPORT -isystem /usr/include/x86_64-linux-gnu -DEIGEN_FFTW_DEFAULT -Wall -O3 -DNDEBUG -Isrc -I./core -Icmd -isystem /usr/local/include/eigen3 -DEIGEN_DONT_PARALLELIZE core/file/ofstream.cpp -o tmp/core/file/ofstream.o
failed with output
In file included from core/file/ofstream.cpp:16:
In file included from ./core/file/ofstream.h:23:
./core/types.h:319:9: error: redefinition of 'Vector3' as different kind of symbol
using Vector3 = Matrix<MR::default_type, 3, 1>;
^
/usr/local/include/eigen3/Eigen/src/Core/Matrix.h:539:1: note: previous definition is here
EIGEN_MAKE_TYPEDEFS(3, 3)
^
/usr/local/include/eigen3/Eigen/src/Core/Matrix.h:521:67: note: expanded from macro 'EIGEN_MAKE_TYPEDEFS'
template <typename Type> \
^
In file included from core/file/ofstream.cpp:16:
In file included from ./core/file/ofstream.h:23:
./core/types.h:320:9: error: redefinition of 'Vector4' as different kind of symbol
using Vector4 = Matrix<MR::default_type, 4, 1>;
^
/usr/local/include/eigen3/Eigen/src/Core/Matrix.h:540:1: note: previous definition is here
EIGEN_MAKE_TYPEDEFS(4, 4)
^
/usr/local/include/eigen3/Eigen/src/Core/Matrix.h:521:67: note: expanded from macro 'EIGEN_MAKE_TYPEDEFS'
template <typename Type> \
^
2 errors generated.
ERROR: ( 17/505) [CC] tmp/core/signal_handler.o
ERROR: ( 17/505) [CC] tmp/core/signal_handler.o
clang++ -c -std=c++11 -DMRTRIX_BUILD_TYPE="release version" -pthread -fPIC -DMRTRIX_WORD64 -DMRTRIX_NO_NON_POD_VLA -DMRTRIX_TIFF_SUPPORT -isystem /usr/include/x86_64-linux-gnu -DEIGEN_FFTW_DEFAULT -Wall -O3 -DNDEBUG -Isrc -I./core -Icmd -isystem /usr/local/include/eigen3 -DEIGEN_DONT_PARALLELIZE core/signal_handler.cpp -o tmp/core/signal_handler.o
failed with output
In file included from core/signal_handler.cpp:24:
In file included from ./core/app.h:27:
In file included from ./core/cmdline_option.h:27:
In file included from ./core/mrtrix.h:36:
./core/types.h:319:9: error: redefinition of 'Vector3' as different kind of symbol
using Vector3 = Matrix<MR::default_type, 3, 1>;
^
/usr/local/include/eigen3/Eigen/src/Core/Matrix.h:539:1: note: previous definition is here
EIGEN_MAKE_TYPEDEFS(3, 3)
^
/usr/local/include/eigen3/Eigen/src/Core/Matrix.h:521:67: note: expanded from macro 'EIGEN_MAKE_TYPEDEFS'
template <typename Type> \
^