make、gcc、openmpi、lapack和scalapack编译安装

地址:https://www.jianshu.com/p/ac42a44d5c7f
编译安装至用户指定目录。


升级make

wget http://ftp.gnu.org/gnu/make/make-4.2.1.tar.gz
tar -zxvf make-4.2.1.tar.gz
cd make-4.2.1
./configure --prefix=$HOME/dirname/make-4.2.1
make && make install

make可执行文件位于dirname/make-4.2.1/bin目录中,添加该目录至PATH环境变量。

gcc

wget http://ftp.gnu.org/gnu/gcc/gcc-7.3.0/gcc-7.3.0.tar.gz
tar -zxvf gcc-7.3.0.tar.gz
cd gcc-7.3.0
./contrib/download_prerequisites
./configure --prefix=$HOME/dirname/gcc-7.3.0 --disable-multilib
make -j 8 && make install

./contrib/download_prerequisites这步命令需联网下载gmp-6.1.0.tar.bz2mpfr-3.1.4.tar.bz2mpc-1.0.3.tar.gzisl-0.16.1.tar.bz2四个文件,服务器联网方法可见服务器SSH隧道联网设置,也可在ftp://gcc.gnu.org/pub/gcc/infrastructure地址下载,上传至gcc-7.3.0目录执行编译安装。make -j 8为开启8线程加快编译进程,编译完成后添加dirname/gcc-7.3.0/bin至PATH环境变量,dirname/gcc-7.3.0/lib64至LD_LIBRARY_PATH

openmpi

wget https://download.open-mpi.org/release/open-mpi/v3.1/openmpi-3.1.2.tar.gz
tar -zxvf openmpi-3.1.2.tar.gz
cd openmpi-3.1.2
./configure --prefix=$HOME/dirname/openmpi-3.1.2
make -j 8 && make install

编译完成后添加dirname/openmpi-3.1.2/bin目录至PATH环境变量,dirname/openmpi-3.1.2/lib目录至LD_LIBRARY_PATH

lapack

wget https://github.com/Reference-LAPACK/lapack/archive/v3.9.0.tar.gz
tar -zxvf lapack-3.9.0.tar.gz
cd lapack-3.9.0
cp INSTALL/make.inc.gfortran ./make.inc

make.inc文件中FFLAGS = -O2 -frecursive改为FFLAGS = -O2 -frecursive -fPIC -m64FFLAGS_NOOPT = -O0 -frecursive改为FFLAGS_NOOPT = -O0 -frecursive -fPIC -m64BLASLIB = $(TOPSRCDIR)/librefblas.a改为BLASLIB = $(TOPSRCDIR)/libblas.a。执行make lapack_install lib blaslib编译,在目录下得到libblas.a liblapack.a libtmglib.a库文件。再将这三个文件复制或ln -s链接至所需位置。

scalapack

wget http://www.netlib.org/scalapack/scalapack-2.1.0.tgz
tar -zxvf scalapack-2.1.0.tgz
cd scalapack-2.1.0
cp SLmake.inc.example SLmake.inc

修改SLmake.inc文件中的下述内容,-lblas-llapacklibblas.aliblapack.a文件。

FC            = mpifort
CC            = mpifort
NOOPT         = -O0 -fPIC
FCFLAGS       = -O3 -fPIC
CCFLAGS       = -O3 -fPIC
CFLAGS        = -O3 -fPIC
BLASLIB       = -L/dirname/lib -lblas
LAPACKLIB     = -L/dirname/lib -llapack

执行如下命令后make,得到libscalapack.a库文件,再将libscalapack.a复制或链接至所需位置。

sed -i '0,/int   n/! s/int   n/int long n/' REDIST/SRC/pgemraux.c
sed -i 's|MPI_Comm_create(tcomm, tgrp|MPI_Comm_create_group(tcomm, tgrp, 0|g' BLACS/SRC/blacs_map_.c
sed -i 's|MPI_Comm_create(ucomm, bgrp|MPI_Comm_create_group(ucomm, bgrp, 0|g' BLACS/SRC/BI_TransUserComm.c
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,271评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,275评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,151评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,550评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,553评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,559评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,924评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,580评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,826评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,578评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,661评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,363评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,940评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,926评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,156评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,872评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,391评论 2 342

推荐阅读更多精彩内容