开发十年,就只剩下这套Java开发体系了 >>>
系统环境:linux6.7+python3.6
方法一:直接使用yum安装+pip安装
centos的yum没有自带的openslide,可以使用阿里云的仓库:
1.更换阿里云:
备份之前的yum库:
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
使用阿里云yum:
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
刷新yum仓库缓存列表:yum clean
yum makecache
在直接使用yum指令安装openslide(该指令安装的版本为3.2.6)
yum install openslide
最后使用pip3安装openslide-python
pip3 install openslide-python
方式二:使用openslide源码安装
1.下载openslide源码包(本次安装的为3.4.1):
https://openslide.org/download/
2.解压安装包:
tar -zxvf /mnt/data1/cell_cut/openslide-3.4.1.tar.gz
3.进入openslide文件夹,执行configure指令,验证安装环境
./configure
4.发现会报缺少一些package,需要通过yum安装这些package。
必要的安装库:zlib, libpng, libjpeg, libtiff, OpenJPEG 1.x or >= 2.1,GDK-PixBuf, libxml2, SQLite >= 3.6.20, cairo >= 1.2, and glib >= 2.16
5.centos自带的yum仓库好多包都下载不了,需要使用阿里云的仓库下载,参照方法一即可。
6.yum切换后,开始下载缺少的package:
yum install libjpeg-turbo-devel.x86_64
yum install openjpeg-devel.x86_64
yum install openjpeg2-devel.x86_64
yum install libtiff-devel.x86_64
yum install glib2-devel.x86_64
yum install cairo-devel.x86_64
yum install gdk-pixbuf2-devel.x86_64
yum install libxml2-devel.x86_64
yum install sqlite-devel.x86_64安装完后,再次执行./configure --prefix=/usr/local/openslide-3.4.1
若还缺少package则继续安装下载,知道验证通过。执行 make && make install
7.安装成功后,再使用pip3安装python的openslide-python
pip3 install openslide-python
8.安装成功后,进入python的shell界面测试:
import openslide
发现lowlevel.py报错,找不到libopenslide.so.0文件。需要将openslide的lib放入classpath路径下
vim /etc/ld.so.conf
--加入openslide的lib路径
/usr/local/openslide-3.4.1/lib--刷新classpath缓存
/sbin/ldconfig---再次验证,发现通过。
方法三:使用copy大法
前面我们通过源码安装了openslide,现在需要给其他机器也安装,则直接使用copy大法即可:已安装主机:name2
待安装主机:data8
1.查找name中openslide的lib目录
find / -name libopenslide.so
位置:/usr/local/lib2.把name2中该lib包复制到data8上:
scp -r root@name2:/usr/local/lib /usr/local3.lib中包含几个软连接,而软连接复制的话会直接被copy成文件,所有需要删除软连接文件,重新生成软连接,最终形成的文件要与name中/usr/local/lib一致:
--删除软连接
rm -rf libjpeg.so libjpeg.so.8 libopenslide.so libopenslide.so.0
--生成软连接
ln -s /usr/local/lib/libjpeg.so.8.3.0 /usr/local/lib/libjpeg.so
ln -s /usr/local/lib/libjpeg.so.8.3.0 /usr/local/lib/libjpeg.so.8
ln -s /usr/local/lib/libopenslide.so.0.4.1 /usr/local/lib/libopenslide.so
ln -s /usr/local/lib/libopenslide.so.0.4.1 /usr/local/lib/libopenslide.so.0将/usr/local/lib加入到库路径下vim /etc/ld.so.conf/usr/local/lib
再执行语句即可:
/sbin/ldconfig4.安装完毕,再copy一个name2中的python3过来
scp -r root@name2:/usr/local/python3 /usr/local5.建立python的软连接
ln -s /usr/local/python3/bin/python3 /usr/bin/python36.启动python,测试openslide
python3
>> import openslide
报错,缺少libopenjp2.so.77.在name2上查找libopenjp2.so.7
find / -name libopenjp2.so.7
文件位置:/usr/lib64/libopenjp2.so.7
检查libopenjp2.so.7是否是软连接
ll /usr/lib64/libopenjp2.so.7
发现libopenjp2.so.7是一个软连接,指向的是libopenjp2.so.2.3.08.copy文件libopenjp2.so.2.3.0至data8
scp -r root@name2:/usr/lib64/libopenjp2.so.2.3.0 /usr/lib64
创建软连接: ln -s /usr/lib64/libopenjp2.so.2.3.0 /usr/lib64/libopenjp2.so.79.再次测试,通过。