历时3小时,无root权限安装SMC++

由于linux系统重置了,导致第二次安装SMC++的过程非常艰辛。

一、一帆风顺情况下

第一次按照GitHub官网安装得很顺利,依赖包都已经安装好了的话会很简单,代码如下:

1、创建python=3.9及以上的虚拟环境(我先安装的3.7,到最后提示有个包需要依赖3.9)

conda create -n smcpp python=3.9

2、安装:

​
git clone https://github.com/popgenmethods/smcpp.git

cd smcpp/

python setup.py install

​

二、与Errorsssss斗智斗勇

1、Error 1: 总体上就是mpfr, gmp, gmpxx库没有安装

fatal error: mpfr.h: No such file or directory

compilation terminated.
error: command '/usr/bin/gcc' failed with exit code 1

安装过程中的坑太多了,总结出的血泪经验就是:

(1)在安装mpfr前,需要先安装gmp,否则Error (configure: error: gmp.h can‘t be found, or is unusable.);

(2)在安装gmp同时安装gmpxx!否则Error (fatal error: gmpxx.h: No such file or directory)

直接上succeed代码:

1. 安装gmp和gmpxx(参考文章:安装gmp库

#1. 官网下载gmp包()并解压缩

官网:https://gmplib.org/

xz -d gmp-6.3.0.tar.xz

tar -xvf gmp-6.3.0.tar

cd gmp-6.3.0

#2. 安装

 ./configure --enable-cxx --prefix=~/software --build=x86_64-linux
 # --enable-cxx: 配置GMP时,默认情况下不启用C++支持。解压缩该软件包,并使用以下命令进行配置:./configure --prefix=/usr/local --enable-cxx-这还将安装gmpxx.h header 以及libgmpxx.dylib和/或libgmpxx.a库
 # --prefix=/path_to_install 默认路径为/user/local,如果无root权限,必须添加路径

 make
 make check
 make install

安装成功后,我的~/software目录下会出现include/ 和lib/ 两个文件夹,gmp.h和gmpxx.h就在include文件夹里。

#3. 在~/.bashrc中添加环境变量

vi ~/.bashrc
export LD_LIBRARY_PATH=~/software/lib:$LD_LIBRARY_PATH
source ~/.bashrc
2. 安装mpfr库(参考:https://blog.csdn.net/qq_42694450/article/details/114765675https://blog.csdn.net/u014786330/article/details/115824646

#1. 下载

wget http://www.mpfr.org/mpfr-4.0.1/mpfr-4.0.1.tar.bz2
tar jxvf mpfr-4.0.1.tar.bz2
cd mpfr-4.0.1/

#2. 安装

./configure --prefix=~/software --with-gmp-include =~/software/include --with-gmp-lib =~/software/lib
make 
make check 
make install

成功后,mpfr.h会在include文件夹里。

3. 将这三个文件复制到smcpp/include/里

2、Error 2: ld: cannot find -lxxx

运行python setup.py install时,又出现

~/anaconda3/envs/python3.9/compiler_compat/ld: cannot find -ldmpfr

~/anaconda3/envs/python3.9/compiler_compat/ld: cannot find -ldgmp

~/anaconda3/envs/python3.9/compiler_compat/ld: cannot find -ldgmpxx

参考https://www.cnblogs.com/devilmaycry812839668/p/17644566.html给anaconda3配置link

vi ~/.bashrc
export LIBRARY_PATH=~/software/lib:$LIBRARY_PATH
source ~/.bashrc

不管用的话,像我一样简单粗暴的复制过去

cp ~/software/lib/lib*  ~/anaconda3/envs/python3.9/compiler_compat/

最后终于安装成功了!愿每个生信人遇到的Error少一点~


测试又出现了Error,┭┮﹏┭┮

'seaborn-ticks' is not a valid package style,

还好找到了解决办法,参考https://www.jianshu.com/p/aa737eb91f95

完美解决!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值