linux服务器搭建之路15-常用医学图像处理软件的安装
作为一个医学图像研究僧,怎么能不会各种医学图像处理软件的安装,今天记录一下这些软件的安装过程,很简单。这些软件包括spm,FSL,freesurfer等。
1. FSL
1.1 安装
去官网注册一下,并下载fslinstall.py文件,:https://fsl.fmrib.ox.ac.uk/fsl/fslwiki/FslInstallation/Linux 安装命令:
python fslinstaller.py
其中可以选择参数: -d specify folder to install FSL into (without ‘fsl’), e.g. /usr/local -e only configure your account for running FSL -E configure FSL for all users (Linux) -v print installer version number and exit -c check for updated versions of FSL -l list versions of FSL available for download
-V install specified version number e.g. 5.0.10 -s download the source code for the current, or specified version of FSL -F download the FEEDS data set for the current, or specified version of FSL -q silence all messages -p skip environment setup -D switch on debug messages - use this option to generate logging that can be included when requesting installation support
需要注意的是: -l 可以看可以安装的版本,-V指定版本, -d指定路径,路径需要有可写入权限。 需要很长的时间等待,完成之后添加环境变量。
vim ~/.bashrc
添加:
# FSL
export FSLDIR=/usr/local/fsl
. ${FSLDIR}/etc/fslconf/fsl.sh
export PATH=$PATH:$FSLDIR/bin
重新登录或者source一下生效。
1.2 验证
FSL依赖python版本为Python2,一定要将系统的默认版本设置为python2
flirt -version
如果安装成功:
FLIRT version 6.0
可能会报错:
libopenblas.so.0: cannot open shared object file: No such file or directory
1.3 错误解决
安装openblas就可以解决1.2 中的错误 下载地址: https://github.com/xianyi/OpenBLAS/releases 下载后解压:
tar -zxvf OpenBLAS*
进入目录后:
sudo make PREFIX=/usr/local/blas
sudo make install
在lib64里建立软连接:
sudo ln -s /usr/local/blas/libopenblas_haswellp-r0.2.20.so /usr/lib64/libopenblas.so.0
之后就可以了
2. Freesurfer
2.1 安装
安装包下载地址:http://www.freesurfer.net/fswiki/DownloadAndInstall 安装命令:
tar -C /usr/local -xzvf freesurfer-Linux-centos6_x86_64-stable-pub-v6.0.0.tar.gz
-C后面是安装位置
2.2 添加环境变量
vim ~/.bashrc
添加:
# freesurfer
export FREESURFER_HOME=/usr/local/freesurfer
FS_FREESURFERENV_NO_OUTPUT=1
source $FREESURFER_HOME/SetUpFreeSurfer.sh
第二句是为了设置每次登陆的时候不输出freesurfer的环境变量。
2.3 安装响应的库文件
ldd /usr/local/freesurfer/tktools/tksurfer.bin
缺什么,,补什么。亲测图中没有的三个不是必须的。
2.4 报错处理
- libGLU找不到
错误信息:
/usr/local/freesurfer/tktools/tkregister2.bin: error while loading shared libraries: libGLU.so.1: cannot open shared object file: No such file or directory
解决办法:安装一下libGLU
# yum whatprovides libGLU.so.1
Loaded plugins: fastestmirror, ovl Loading mirror speeds from cached hostfile
- base: repos-va.psychz.net
- epel: mirrors.mit.edu
- extras: mirrors.rit.edu
- updates: mirror.wdc1.us.leaseweb.net mesa-libGLU-9.0.0-4.el7.i686 : Mesa libGLU library Repo : base Matched from: Provides : libGLU.so.1
yum install mesa-libGLU-9.0.0-4.el7.i686
建立连接一下:
sudo ln -s /usr/lib/libGLU.so.1 /usr/bin/libGLU.so.1
- libnetcdf.so.6找不到 解决办法:
yum install netcdf
装完要链接一下到cdf6.0
ln -s /usr/lib64/libnetcdf.so.7 /usr/bin/libnetcdf.so.6
- error while loading shared libraries: libXss.so.1: cannot open shared object file: No such file or directory
解决办法:sudo yum install libXScrnSaver
3. AFNI
3.1 安装
centos7版本下载:
wget https://afni.nimh.nih.gov/pub/dist/tgz/linux_centos_7_64.tgz
其他版本下载: https://afni.nimh.nih.gov/pub/dist/doc/htmldoc/background_install/download_links.html
下载后解压到安装目录,并添加环境变量:
tar -zxvf inux_centos_7_64.tgz
复制文件到安装位置
cd inux_centos_7_64
sudo cp -r * /usr/local/afni
vim ~/.bashrc:
# AFNI
export AFNI_DIR=/usr/local/afni
export PATH=$PATH:$AFNI_DIR
3.2 验证
重新加载环境变量后输入:afni
界面很不好看啊
3.3 报错信息
- 错误代码
afni: error while loading shared libraries: libXm.so.4: cannot open shared object file: No such file or directory
- 解决方案
sudo yum install libXp
sudo yum install openmotif
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Java后端面试学习知识总结
- Spring框架源码脉络分析(一):IoC与容器、Bean和BeanDefinition
- Spring-Data-Redis 2.X以上版本使用心得和一些坑
- Java后端面试学习知识总结——数据库:MySQL
- Java 记一次自定义比较器中compareTo方法使用long强转int作为比较结果产生的bug
- SpringCloud 使用feign报错
- Java 使用Runtime在一个Java程序中启动和关闭另一个Java程序
- 解决虚拟机Centos7 报错 curl#56
- Java 桶排序实现 如何判断该放到哪个桶里
- Java selenium使用ChromeDriver截图 解决get超时后续任务报错问题
- 冒泡排序-排序算法
- Java中JDBC工具类封装
- 3.深入k8s:Deployment控制器
- 使用FreeSurfer进行脑区分割
- android 调试 adb