24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 1730  |  回复: 29

田山东

捐助贵宾 (著名写手)

[求助] linux下安装arpack遇到阻力,求助:lurencyj请关注下,谢谢

系统:Linux version 2.6.37.1-1.2-desktop (geeko@buildhost) (gcc version 4.5.1 20101208 [gcc-4_5-branch revision 167585] (SUSE Linux) ) #1 SMP PREEMPT
gfortran编辑器,因为我在编辑的时候都是gfortran开头,所以认为是gfortran编辑器。
现在将我的安装过程写下来,请大家帮忙下:
下载arpack96.tar.z,patch.tar.z
解压:tar -zxvf arpack96.tar.z
tar -zxvf patch.tar.z
这两个文件在这个文件夹里:home/tianhongyu/arpack
解压之后产生一个文件夹:ARPACK
ls,找到里面的ARmake.inc,修改里面的参数,
vim ARmake.inc
被修改的参数如下:
home = /home/tianhongyu/arpack/ARPACK
PLAT = LINUX
#下面这条是从网上摘抄的,不知道这么写行不行
BLASdir      = /usr/local/share/BLAS
LAPACKdir    = /usr/local/share/lapack-3.1.1
UTILdir      = $(home)/UTIL
SRCdir       = $(home)/SRC

DIRS        = $(BLASdir) $(LAPACKdir) $(UTILdir) $(SRCdir)
ARPACKLIB  = $(home)/libarpack_$(PLAT).a
LAPACKLIB = /usr/local/lib/liblapack.a
BLASLIB = /usr/local/lib/libblas.a
FC      = gfortran
FFLAGS  = -O
MAKE    =/usr/bin/make
这个文件被我修改的只有这些,网上搜索发现,可能还需要修改:
1.需要安装两个库:
然后安装这个库
linux-1482:/usr/local/share/ARPACK # cd /usr/local/lib
linux-1482:/usr/local/lib # ln -s /usr/local/share/ARPACK/libarpack_LINUX.a ./libarpack.a
目前为止我有没有安装这个库?怎么安装呢?
2.有人给出7条弯路,我为了避免这些弯路,该怎么做呢?
编译Arpack所做过的蠢事
1. 没有将UTIL目录下second.f 中的ETIME变量的属性修改为INTRINSIC;
2. 没有将根目录下的Armake.in中make的路径修改为/usr/bin/make;
3. 没有将根目录下的Armake.in中PLAT修改为本地系统名;
4. 没有将根目录下的Armake.in中FC修改为本地的fortran编译器命令;
5. 运行make lib后, 测试EXAMPLE/SIMPLE/sssimp.f
    使用了:    f77 -L/data/home/XXX/ARPACK/ -larpack_linux -o ss sssimp.f
    而没有使用: f77 -o ss sssimp.f -L/data/home/XXX/ARPACK/ -larpack_linux
NOTE: sssimp.f文件中的include 'debug.h'最好注释掉,如果你不想拷贝一个debug.h到EXAMPLE/SIMPLE/下的话.

6. 在ARmake.in里面的FC编译器和以后编译程序的编译器不一致.
7. 使用gfortran编译器时,没有添加选项: -ff2c; 导致生成的库和fortran 77 不兼容.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
很着急啊,请大家帮忙支招吧。谢谢了!网友们,期待了!!
回复此楼

» 本帖已获得的红花(最新10朵)

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

everythinghasitsseason.enjoyyourlife.
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

snoopyzhao

至尊木虫 (职业作家)

【答案】应助回帖

★ ★ ★ ★ ★
感谢参与,应助指数 +1
jjdg: 金币+1, 感谢参与 2012-10-12 00:42:12
田山东: 金币+4, ★★★★★最佳答案 2012-10-12 16:37:13
最后一条真胡扯, -ff2c 是个什么东西,难道是 -lf2c?如果没有记错的话, f2c 是将 fortran 77 程序转成 c 之后,调用 gcc 进行编译的一种手法

gfortran 是正宗的 fortran 编译器,兼容 fortran 77,只要参数合适,一般不会有什么问题……

话说,安装 arpack,你参考 arpack 官方网站上的文档不可以吗?如果是一些比较主流的发行版,这应该有可直接安装的包……
2楼2012-10-11 21:54:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

【答案】应助回帖

★ ★ ★ ★ ★
田山东: 金币+1, ★★★★★最佳答案 2012-10-12 14:29:29
田山东: 金币+4, ★★★★★最佳答案 2012-10-12 16:37:20
哦,ARmake.in 中,下面两行需要修改,
FC      = gfortran
FFLAGS        = -O

我不太清楚 f77 (这个应该是 SUN 上的 fortran 编译器)中的 -cg89 是什么意思,你可以查一下,如果无关紧要,去掉就行,如果很关键,在 gfortran 的手册中找一下

至于 PLAT,改不改都可以,改了,那只是一个符号,无妨碍的。

至于
LAPACKLIB =
BLASLIB =

先空着(我不太确定要怎么填),因为 arpack 带了 blas 和 lapack 的源码,让 arpack 用它自己带的,如果提示有错误,再修改……

至于 MAKE    = /bin/make
你可以先用 which make,找出来哪个,就填哪个好了……
5楼2012-10-12 09:02:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

我手头现在没有 Linux 机器可用,所以……

其实,我前面也说过,流行的发行版中应该会带这个库,搜一下,直接安装就可以了……
6楼2012-10-12 09:03:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lurencyj

木虫 (著名写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
田山东: 金币+2, ★★★★★最佳答案, 好人一生平安! 2012-10-12 13:09:52
田山东: 金币+8, ★★★★★最佳答案 2012-10-12 16:37:30
1.  关于安装。建议你不要自己编译源代码,如果你没有头绪,没有相应的经验。最好通过suse自带的软件管理来安装arpack. 这里有个链接是介绍opensuse下如何安装软件的:http://zhidao.baidu.com/question ... t=clez_ik?zid=10081。我摘抄一下:
zypper se xxxxx 是搜索软件包
zypper in xxxxx 安装xxxxx软件包
zypper rm xxxx  删除
zypper up xxxx 更新软件

2. 关于编译。gfortran -o exe *.f90 -l libarparck.a -L 库的路径

具体的东东可以参照suse的使用科普资料,以及gfortran的编译参数
很女子很弓虽大
10楼2012-10-12 12:51:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

引用回帖:
9楼: Originally posted by 田山东 at 2012-10-12 10:39:55
user's guide 没说怎么编译程序啊。郁闷啊。一个人搞,搞死人啊

编译还需特别的东西吗?
CODE:
gfortran a.f /path/to/arpack/lib/libarpack_linux.a -o a.exe

应该就可以了啊……
18楼2012-10-12 16:05:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

引用回帖:
16楼: Originally posted by lurencyj at 2012-10-12 15:35:42
说了挺多,可能楼主还没有搞定。SUSE Linux的我不清楚。在Debian/Ubuntu下面,最佳的方案是:
sudo apt-get install build-essential
sudo apt-get install gfortran
sudo apt-get install libarpack2-dev

ar ...

赞一个,对于这类库,我也赞成用系统自带的……
19楼2012-10-12 16:07:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

引用回帖:
14楼: Originally posted by 田山东 at 2012-10-12 15:05:04
果然,需要安装两个库文件
linux-1482:/usr/local/share/ARPACK # cd /usr/local/lib
linux-1482:/usr/local/lib # ln -s /usr/local/share/ARPACK/libarpack_LINUX.a ./libarpack.a

哎。。我以为装好ARmake. ...

其实没有必要用 ln -s 形成软链接的

在 gfortran 编译的时候,记得把 libarpack.a 的路径写全就可以了……
20楼2012-10-12 16:10:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

【答案】应助回帖

★ ★ ★ ★ ★
田山东: 金币+5, ★★★★★最佳答案, 那个文件看到了,说,如果改变libarpack的路径要干嘛干嘛的 2012-10-12 17:56:38
引用回帖:
22楼: Originally posted by 田山东 at 2012-10-12 16:27:48
老大,怎么找到这个库文件的路径啊?超级菜鸟问题了。我装好arpack之后在文件夹ARPACK里有个libarpack_SUN4.a,是它吗?...

你研究一下那个 ARPACK/example/simple/makefile 就知道了……
24楼2012-10-12 17:26:46
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

田山东

捐助贵宾 (著名写手)

引用回帖:
2楼: Originally posted by snoopyzhao at 2012-10-11 21:54:00
最后一条真胡扯, -ff2c 是个什么东西,难道是 -lf2c?如果没有记错的话, f2c 是将 fortran 77 程序转成 c 之后,调用 gcc 进行编译的一种手法

gfortran 是正宗的 fortran 编译器,兼容 fortran 77,只要参数合 ...

不行啊,摸索好久了。郁闷着呢、
everythinghasitsseason.enjoyyourlife.
3楼2012-10-11 22:57:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

【答案】应助回帖

引用回帖:
3楼: Originally posted by 田山东 at 2012-10-11 22:57:06
不行啊,摸索好久了。郁闷着呢、...

这个程序不难安装啊,看了一下那个 README 和 ARmake.in

可能唯一需要注意的是 second.f 中的 ETIME 函数,不过 gfortran 好象支持这个函数,你把 external etime 那行去掉就可以了。

有问题,把具体的问题贴出来,就那么几个参数,折腾几下就应该可以了……
4楼2012-10-12 08:54:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

田山东

捐助贵宾 (著名写手)

引用回帖:
6楼: Originally posted by snoopyzhao at 2012-10-12 09:03:02
我手头现在没有 Linux 机器可用,所以……

其实,我前面也说过,流行的发行版中应该会带这个库,搜一下,直接安装就可以了……

谢谢你,安装的时候没问题了。关键是,怎么去用它呢?比如它自带的一个程序,我该调用哪些命令才能让他运行起来呢?
everythinghasitsseason.enjoyyourlife.
7楼2012-10-12 09:39:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

【答案】应助回帖

★ ★
田山东: 金币+2, ★★★★★最佳答案, 好人啊!! 2012-10-12 13:09:38
引用回帖:
7楼: Originally posted by 田山东 at 2012-10-12 09:39:03
谢谢你,安装的时候没问题了。关键是,怎么去用它呢?比如它自带的一个程序,我该调用哪些命令才能让他运行起来呢?...

这个不是有 user's guide 吗……
8楼2012-10-12 09:58:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

田山东

捐助贵宾 (著名写手)

送鲜花一朵
user's guide 没说怎么编译程序啊。郁闷啊。一个人搞,搞死人啊
everythinghasitsseason.enjoyyourlife.
9楼2012-10-12 10:39:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 田山东 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 304求调剂 +4 曼殊2266 2026-03-27 4/200 2026-03-28 07:22 by Iveryant
[考研] 286求调剂 +3 丢掉懒惰 2026-03-27 6/300 2026-03-27 23:46 by barnett0632
[考研] 070300化学求调剂 +4 起个名咋这么难 2026-03-27 4/200 2026-03-27 21:39 by 83503孙老师
[考研] 求调剂 +4 零八# 2026-03-27 4/200 2026-03-27 18:07 by yu221
[考研] 283求调剂(080500) +4 A child 2026-03-27 4/200 2026-03-27 15:34 by XPU李庆
[考研] 339求调剂 +4 烤麦芽 2026-03-27 5/250 2026-03-27 13:23 by 752105528
[考研] 348求调剂 +4 小懒虫不懒了 2026-03-27 5/250 2026-03-27 12:47 by 果果妈咪
[考研] 329求调剂 +4 星野? 2026-03-26 4/200 2026-03-27 12:00 by 不吃魚的貓
[考研] 081200-11408-276学硕求调剂 +3 崔wj 2026-03-26 3/150 2026-03-27 07:58 by chemisry
[考研] 304材料求调剂 +4 钟llll 2026-03-26 4/200 2026-03-27 03:42 by wxiongid
[考研] 349求调剂 +5 杰斯塔里斯 2026-03-21 5/250 2026-03-27 00:31 by wxiongid
[考研] 321求调剂 +6 wasdssaa 2026-03-26 6/300 2026-03-26 20:57 by sanrepian
[考研] 297求调剂 +6 田洪有 2026-03-26 6/300 2026-03-26 15:55 by 不吃魚的貓
[考研] 一志愿南航 335分 | 0856材料化工 | GPA 4.07 | 有科研经历 +6 cccchenso 2026-03-23 6/300 2026-03-25 22:25 by 544594351
[考研] 材料与化工304求B区调剂 +3 邱gl 2026-03-25 3/150 2026-03-25 19:03 by Ainin_
[考研] 材料调剂 +3 iwinso 2026-03-23 3/150 2026-03-25 11:29 by greychen00
[考研] 318求调剂 +3 plum李子 2026-03-23 3/150 2026-03-25 09:42 by 雾散后相遇lc
[考研] 340求调剂 +5 话梅糖111 2026-03-24 5/250 2026-03-25 06:53 by ilovexiaobin
[考研] 280分求调剂 一志愿085802 +4 PUMPT 2026-03-22 7/350 2026-03-22 22:13 by 星空星月
[考研] 一志愿深大,0703化学,总分302,求调剂 +4 七月-七七 2026-03-21 4/200 2026-03-21 18:20 by 学员8dgXkO
信息提示
请填处理意见