Fail of update newest mrtrix3

Hi everyone:
I want use the newest version of the fixelcfestats to deal with the smoothed data.
But the command “conda update -c mrtrix3 mrtrix” seems not work. No update has done for fixelcfestats. I then downloaded the Qt5.9.1, and try re-configure the mrtrix3.
But it returns some problems :

/home/angelman/opt/Qt5.9.1/5.9.1/gcc_64/include/QtCore/qobject.h:578:56: error: expected initializer before ‘Q_DECL_NOTHROW’
QSignalBlocker::QSignalBlocker(QSignalBlocker &&other) Q_DECL_NOTHROW
/home/angelman/opt/Qt5.9.1/5.9.1/gcc_64/include/QtCore/qobject.h:586:67: error: expected initializer before ‘Q_DECL_NOTHROW’
QSignalBlocker &QSignalBlocker::operator=(QSignalBlocker &&other) Q_DECL_NOTHROW
ERROR: error compiling Qt application!

How can I fix the problem and update Mrtrix3 to newest version?
Many thanks for any help!

Can you be more specific? Is there an error message? Which platform is this on?

Regarding the compile error, I’m not sure, but if I had to guess I reckon you may have multiple versions of Qt available and they’re getting mixed up. Posting the full output of the command and the contents of the configure.log file will likely provide enough information to work this out.

Yes, there’s a conflict – same as others have reported:

In file included from /usr/include/QtCore/qdatastream.h:46:0,
                 from /usr/include/QtCore/qmetatype.h:49,
                 from /home/angelman/opt/Qt5.9.1/5.9.1/gcc_64/include/QtCore/qobject.h:54,
                 from /home/angelman/opt/Qt5.9.1/5.9.1/gcc_64/include/QtCore/QObject:1,

You can see that it’s originally including your headers from your downloaded version in /home/angelman/opt/Qt5.9.1/, but then ends up bringing in headers from your main distribution package in /usr/include.

Looking at the package listing for Qt5 on CentOS 7, it looks like the system-supplied version is 5.9.7, which is more recent than the one you’re trying to use. I’m not sure why you’ve downloaded version 5.9.1 – the most recent version in the Qt5 series is 5.15.2. My suggestion is to remove your downloaded version and use the distribution-supplied version as it is…

Hi jdtrounier:
Many thanks for your help ! I have tried to re-install Qt. It takes a long time for me and I decide to use the old version for my present work. However, when I ran population_template, it returns me : mrtransform: unknown option ‘reorient_fod’. I tried to modified ‘reorinet_fod’ with ‘noreorientation’ in population_template, but it didn’t work. New errors occurred, like this :

population_template: [ERROR] mrgrid average_header_cropped.mif pad -uniform 10 average_header.mif (population_template:1104)
              population_template: [ERROR] Information from failed command:
                                   mrgrid: changing axis 0 extent from 0:183 (n=184) to -10:193 (n=204)
                                   mrgrid: changing axis 1 extent from 0:201 (n=202) to -10:211 (n=222)
                                   mrgrid: changing axis 2 extent from 0:72 (n=73) to -10:82 (n=93)
                                   mrgrid: [ERROR] output file "average_header.mif" already exists (use -force option to force overwrite)
                                   mrgrid: [ERROR] error creating image "average_header.mif"
              population_template: [ERROR] For debugging, inspect contents of scratch directory: /home/angelman/Public/AS_dti/TractAnalysis/roi/roianalysis30/Fixel/ssst/normalise/dwinormalise-tmp-O5S6FX/dwinormalise-tmp-UG55G1/population_template
              population_template: Scratch directory retained; location: /home/angelman/Public/AS_dti/TractAnalysis/roi/roianalysis30/Fixel/ssst/normalise/dwinormalise-tmp-O5S6FX/dwinormalise-tmp-UG55G1/population_template
dwinormalise: [ERROR] For debugging, inspect contents of scratch directory: /home/angelman/Public/AS_dti/TractAnalysis/roi/roianalysis30/Fixel/ssst/normalise/dwinormalise-tmp-O5S6FX/dwinormalise-tmp-UG55G1/

It seems associate with the previous update fail?
My python version is 3.8.3. How can I fix it and use the older version to continue my work?
Thanks for your help !!

OK, glad you got the software to build eventually – I realise it’s not always easy!

Your latest issue is unlikely to have anything to do with the software installation though. It sounds like your first attempt at running population_template failed due to the use on an unknown option (-reorient_fod), which is as expected. The subsequent failure is due to trying to overwrite existing files, which I assume were generated from that previous (failed) invocation of the same command:

You just need to either delete all the outputs that were left from that previous failed run, or use the -force option as suggested.

One thing to note though, is that the -noreorientation option has the opposite meaning from what it sounds like you were trying to achieve with the -reorient_fod (which is actually an option to the mrtransform command). I suggest you remove that option if you’re trying to build an FOD population template – perfectly fine if that’s not what you’re doing, of course…

Hi tournier:
Many thanks for your help! Finally, I found the simplest way to solve all the problems is re-install the QT with newest version and re-build the Mrtrix. :laughing: :laughing: