DSI Studio is an open-source diffusion MRI analysis tool. We need to compile the software for Linux.
I could successfully finish compile the DSI Studio for Ubuntu 18.04 and later. Below is what I did.
- 18-May-2021 Update instruction for Ubuntu 20.04. You need to install g++-7 and gcc-7 for compile.
- 08-May-2021 Ubuntu 20.04 has Qt5.12.8 as default, so it would be easy. For Ubuntu 18.04, I found PPA for Qt5.12.8, which would make the installation much easier, so I updated the instruction.
- 21-Mar-2020 Now DSI studio needs Qt 5.12.x for compile. I added the explanation how to setup Qt 5.12.
- Install gcc and g++
- Ubuntu 20.04
- Ubuntu 18.04
- Install necessary files for compile
- Get Qt 5.12.8
- For Ubuntu 20.04, default Qt5 should work.
- For Ubuntu 18.04, PPA provided by Stephan Binner would be helpful.
- Prepare a working directory
- Get the Windows version of DSI Studio
- Get the source code from GitHub
- Compile
- Packaging
- Run DSI Studio
DSI Studio needs gcc-7 and g++-7 for compile on Ubuntu 20.04. We can install them via apt.
1 2 | sudo apt update sudo apt install g++-7 |
Just installing gcc-7 and g++-7 won’t have any effects on the machine.
You can check the version of gcc and g++ by typing gcc –version and g++ –version
1 2 3 4 5 | gcc --version gcc (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0 g++ --version g++ (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0 |
In order to make gcc-7 and g++-7 available, we need to do the following;
1 2 | sudo update-alternatives -- install /usr/bin/gcc gcc /usr/bin/gcc-7 10 sudo update-alternatives -- install /usr/bin/g ++ g++ /usr/bin/g ++-7 10 |
You should see something like;
1 | update-alternatives: using /usr/bin/g++-7 to provide /usr/bin/g++ (g++) in auto mode |
If you have installed other version of gcc (eg. gcc-10), You need to select gcc-7 and g++-7
01 02 03 04 05 06 07 08 09 10 11 | sudo update-alternatives --config gcc There are 2 choices for the alternative gcc (providing /usr/bin/gcc ). Selection Path Priority Status ------------------------------------------------------------ 0 /usr/bin/gcc-7 10 auto mode 1 /usr/bin/gcc-7 10 manual mode * 2 /usr/bin/gcc-9 20 manual mode Press <enter> to keep the current choice[*], or type selection number: 0 |
Do the same thing for g++
1 | sudo update-alternatives --config g++ |
DSI Studio needs gcc-7 and g++-7 for compile on Ubuntu 18.04. We can install them via apt.
1 | sudo apt install g++-7 |
We also need to install the following;
1 | sudo apt install git libboost-all-dev zlib1g zlib1g-dev |
1 | sudo apt install qt5-qmake qt5-default libqt5charts5-dev |
Some may need to install libqt5opengl5-dev (Thank Steven Baete for the Feedback!)
1 | sudo apt install libqt5opengl5-dev |
1 2 3 4 | sudo add-apt-repository ppa:beineri /opt-qt-5 .12.8-bionic sudo apt update sudo apt install qt512base qt512charts-no-lgpl source /opt/qt512/bin/qt512-env .sh |
Prepare a working directory. We save files in this directory.
1 | mkdir dsistudio |
Download the Windows version of DSI Studio from this link and save it under working directory (dsistudio).
Filename should be “dsi_studio_win.zip.”
Now we get the source code of DSI Studio from Github. We also need “frankyeh-TIPL-xxxxxx(revision number).zip” to be downloaded. After unzipping, rename the folder as “tipl”, and move under src.
1 2 3 4 5 6 | cd dsistudio git clone -b master git: //github .com /frankyeh/DSI-Studio .git src xdg- open https: //github .com /frankyeh/TIPL/zipball/master unzip frankyeh-TIPL-xxxxxxx.zip mv frankyeh-TIPL-xxxxxxx tipl mv tipl src |
Prepare a directory for build and compile. The point is that we need to use qmake under Qt5.12.8. I chose to specify fullpath because I don’t have to tweak system environments. After executing qmake, we just run make to compile.
01 02 03 04 05 06 07 08 09 10 | mkdir build cd build #(for Ubuntu 20.04) qmake .. /src #(for Ubuntu 18.04 using ppa by Stephan Binner) /opt/qt512/bin/qmake .. /src make |
If it goes well, you should find dsi_studio under build directory.
You may remove unnecessary files with make clean.
1 | make clean |
Windows version zip file has atlas and other files included. We make use of it.
DLL files are for Windows, so we delete all of them.
1 2 3 4 5 6 7 | cd .. # Now you should be in the "dsistudio" directory unzip dsi_studio_win.zip cd dsi_studio_win find . -name '*.dll' - exec rm {} ; rmdir iconengines imageformats platforms styles rm dsi_studio.exe cp .. /build/dsi_studio . |
Now you can run DSI Studio from the terminal.
1 | . /dsi_studio |
If everything works, the command brings up DSI Studio.