Installation problem

I’m installing MRtrix3 on Centos7 without admin rights. I have the following error message:

ERROR: error compiling Qt application!

In the configure.log file there is this error:

EXEC <<
CMD: /lustre/bio_shared/gcc_10_1/gcc-10.1.0/install_folder/bin/g++ -c -std=c++11 -DMRTRIX_BUILD_TYPE="release version" -pthread -fPIC -DMRTRIX_WORD64 -DMRTRIX_HAVE_EIGEN_UNSUPPORTED_SPECIAL_FUNCTIONS -isystem /lustre/bio_shared/mtrix/zlib-1.2.11/install_dir -DMRTRIX_TIFF_SUPPORT -DMRTRIX_PNG_SUPPORT -idirafter /usr/include/libpng15 -DEIGEN_FFTW_DEFAULT -pipe -g -std=gnu++11 -Wall -W -D_REENTRANT -fPIC -DQT_OPENGL_LIB -DQT_SVG_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -idirafter /lustre/bio_shared/mtrix/qt5/qt5-build/install_dir/include -idirafter /lustre/bio_shared/mtrix/qt5/qt5-build/install_dir/include/QtOpenGL -idirafter /lustre/bio_shared/mtrix/qt5/qt5-build/install_dir/include/QtSvg -idirafter /lustre/bio_shared/mtrix/qt5/qt5-build/install_dir/include/QtWidgets -idirafter /lustre/bio_shared/mtrix/qt5/qt5-build/install_dir/include/QtGui -idirafter /lustre/bio_shared/mtrix/qt5/qt5-build/install_dir/include/QtNetwork -idirafter /lustre/bio_shared/mtrix/qt5/qt5-build/install_dir/include/QtCore -idirafter /lustre/bio_shared/mtrix/qt5/qt5-build/install_dir/mkspecs/linux-g++ qt.cpp -o qt.o
EXIT: 1
STDERR:
In file included from /lustre/bio_shared/mtrix/qt5/qt5-build/install_dir/include/QtCore/QObject:1,
                 from qt.h:1,
                 from qt.cpp:2:
/lustre/bio_shared/mtrix/qt5/qt5-build/install_dir/include/QtCore/qobject.h:58:19: error: missing binary operator before token "("
   58 | #if QT_HAS_INCLUDE(<chrono>)
      |                   ^
/lustre/bio_shared/mtrix/qt5/qt5-build/install_dir/include/QtCore/qobject.h:77:14: error: missing binary operator before token "("
   77 | #if QT_CONFIG(regularexpression)
      |              ^
In file included from /lustre/bio_shared/mtrix/qt5/qt5-build/install_dir/include/QtCore/QObject:1,
                 from qt.h:1,
                 from qt.cpp:2:
/lustre/bio_shared/mtrix/qt5/qt5-build/install_dir/include/QtCore/qobject.h:152:19: error: missing binary operator before token "("
  152 | #if QT_HAS_INCLUDE(<chrono>)
      |                   ^
/lustre/bio_shared/mtrix/qt5/qt5-build/install_dir/include/QtCore/qobject.h:190:14: error: missing binary operator before token "("
  190 | #if QT_CONFIG(regularexpression)
      |              ^
/lustre/bio_shared/mtrix/qt5/qt5-build/install_dir/include/QtCore/qobject.h:477:24: error: missing binary operator before token "("
  477 | #if QT_DEPRECATED_SINCE(5, 0)
      |                        ^
In file included from /usr/include/QtCore/qdatastream.h:46,
                 from /usr/include/QtCore/qmetatype.h:49,
                 from /lustre/bio_shared/mtrix/qt5/qt5-build/install_dir/include/QtCore/qobject.h:54,
                 from /lustre/bio_shared/mtrix/qt5/qt5-build/install_dir/include/QtCore/QObject:1,
                 from qt.h:1,
                 from qt.cpp:2:
/usr/include/QtCore/qiodevice.h:68:14: error: invalid use of incomplete type class QObject

Could you help me?

I believe you have the same problem as described here:

That said, it appears as if you are trying to install mrtrix on a high-performance computing cluster. Note that, unless you have VNC access to this machine, you probably won’t be able to (comfortably) use MRview remotely on that machine. Instead of running ./configure you could simply run./configure -nogui which will skip configuring and building the GUI commands, MRView and SHView, which are the ones that rely on QT. You can then install mrtrix on your own computer and use MRView locally to inspect and visualize your results.

It works! thank you so much