24小时热门版块排行榜    

查看: 1175  |  回复: 3

heikuyu

新虫 (正式写手)

[求助] 哪位老师肯帮助我看下,安装lammps到最后时出现什么问题 已有1人参与

我在ubuntukylin13.1下安装lammps
安装前安装了gnu compiler, gnu fortran compiler, C++和 f90 compiler等插件,也不知道哪个需要
然后开始按网页上的说明分别安装fftw-3.3.4.tar.gz、mpich_3.0.4.orig.tar.gz和lammps-1Feb14.tar.gz, 都是lammps网站上的。我把这三个文件安装到了/usr/local下。我主要想安装reaxx。
然后修改Makefile.serial, 运行make serial.就始终出现问题。 换成mpich2_1.4.1.orig.tar.gz,结果也一样。
MPI_INC =       -DMPICH_SKIP_MPICXX -I/usr/local/mpich3/include/
MPI_PATH =      -L/usr/local/mpich3/lib
MPI_LIB =        -L/usr/local/mpich3/lib/libmpich

FFT_INC =       -I/usr/local/fftw/include/ -DFFT_fftw3
FFT_PATH =      -L/usr/local/fftw/lib
FFT_LIB =       -L/usr/local/fftw/lib/libfftw3

reax_SYSLIB= -L/usr/local/lmp/lib/reax -libreax
reax_SYSPATH= -L/usr/local/lmp/lib/reax/

运行错误结果是:
(省略前面一部分,感觉类似)
/usr/local/lmp/src/Obj_serial/../verlet_split.cpp:544:对‘MPI_Bcast’未定义的引用
/usr/local/lmp/src/Obj_serial/../verlet_split.cpp:545:对‘MPI_Bcast’未定义的引用
/usr/local/lmp/src/Obj_serial/../verlet_split.cpp:550:对‘MPI_Scatterv’未定义的引用
verlet_split.o:在函数‘LAMMPS_NS::VerletSplit::run(int)’中:
/usr/local/lmp/src/Obj_serial/../verlet_split.cpp:274:对‘MPI_Barrier’未定义的引用
/usr/local/lmp/src/Obj_serial/../verlet_split.cpp:316:对‘MPI_Bcast’未定义的引用
write_data.o:在函数‘LAMMPS_NS::WriteData::WriteData(LAMMPS_NS::LAMMPS*)’中:
/usr/local/lmp/src/Obj_serial/../write_data.cpp:47:对‘MPI_Comm_rank’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:48:对‘MPI_Comm_size’未定义的引用
write_data.o:在函数‘LAMMPS_NS::WriteData::atoms()’中:
/usr/local/lmp/src/Obj_serial/../write_data.cpp:313:对‘MPI_Allreduce’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:335:对‘MPI_Irecv’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:336:对‘MPI_Send’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:337:对‘MPI_Wait’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:338:对‘MPI_Get_count’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:346:对‘MPI_Recv’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:347:对‘MPI_Rsend’未定义的引用
write_data.o:在函数‘LAMMPS_NS::WriteData::velocities()’中:
/usr/local/lmp/src/Obj_serial/../write_data.cpp:366:对‘MPI_Allreduce’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:388:对‘MPI_Irecv’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:389:对‘MPI_Send’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:390:对‘MPI_Wait’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:391:对‘MPI_Get_count’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:399:对‘MPI_Recv’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:400:对‘MPI_Rsend’未定义的引用
write_data.o:在函数‘LAMMPS_NS::WriteData::bonds()’中:
/usr/local/lmp/src/Obj_serial/../write_data.cpp:417:对‘MPI_Allreduce’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:440:对‘MPI_Irecv’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:441:对‘MPI_Send’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:442:对‘MPI_Wait’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:443:对‘MPI_Get_count’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:452:对‘MPI_Recv’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:453:对‘MPI_Rsend’未定义的引用
write_data.o:在函数‘LAMMPS_NS::WriteData::angles()’中:
/usr/local/lmp/src/Obj_serial/../write_data.cpp:470:对‘MPI_Allreduce’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:493:对‘MPI_Irecv’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:494:对‘MPI_Send’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:495:对‘MPI_Wait’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:496:对‘MPI_Get_count’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:505:对‘MPI_Recv’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:506:对‘MPI_Rsend’未定义的引用
write_data.o:在函数‘LAMMPS_NS::WriteData::dihedrals()’中:
/usr/local/lmp/src/Obj_serial/../write_data.cpp:541:对‘MPI_Allreduce’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:564:对‘MPI_Irecv’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:565:对‘MPI_Send’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:566:对‘MPI_Wait’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:567:对‘MPI_Get_count’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:576:对‘MPI_Recv’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:577:对‘MPI_Rsend’未定义的引用
write_data.o:在函数‘LAMMPS_NS::WriteData::impropers()’中:
/usr/local/lmp/src/Obj_serial/../write_data.cpp:612:对‘MPI_Allreduce’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:635:对‘MPI_Irecv’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:636:对‘MPI_Send’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:637:对‘MPI_Wait’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:638:对‘MPI_Get_count’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:647:对‘MPI_Recv’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:648:对‘MPI_Rsend’未定义的引用
write_data.o:在函数‘LAMMPS_NS::WriteData::fix(int, int)’中:
/usr/local/lmp/src/Obj_serial/../write_data.cpp:665:对‘MPI_Allreduce’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:688:对‘MPI_Irecv’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:689:对‘MPI_Send’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:690:对‘MPI_Wait’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:691:对‘MPI_Get_count’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:700:对‘MPI_Recv’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:701:对‘MPI_Rsend’未定义的引用
write_data.o:在函数‘LAMMPS_NS::WriteData::write(char*)’中:
/usr/local/lmp/src/Obj_serial/../write_data.cpp:148:对‘MPI_Allreduce’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:157:对‘MPI_Allreduce’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_data.cpp:161:对‘MPI_Allreduce’未定义的引用
write_restart.o:在函数‘LAMMPS_NS::WriteRestart::WriteRestart(LAMMPS_NS::LAMMPS*)’中:
/usr/local/lmp/src/Obj_serial/../write_restart.cpp:71:对‘MPI_Comm_rank’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_restart.cpp:72:对‘MPI_Comm_size’未定义的引用
write_restart.o:在函数‘LAMMPS_NS::WriteRestart::file_layout(int)’中:
/usr/local/lmp/src/Obj_serial/../write_restart.cpp:555:对‘MPI_Gather’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_restart.cpp:572:对‘MPI_Bcast’未定义的引用
write_restart.o:在函数‘LAMMPS_NS::WriteRestart::write(char*)’中:
/usr/local/lmp/src/Obj_serial/../write_restart.cpp:239:对‘MPI_Allreduce’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_restart.cpp:289:对‘MPI_Allreduce’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_restart.cpp:402:对‘MPI_Irecv’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_restart.cpp:403:对‘MPI_Send’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_restart.cpp:404:对‘MPI_Wait’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_restart.cpp:405:对‘MPI_Get_count’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_restart.cpp:413:对‘MPI_Recv’未定义的引用
/usr/local/lmp/src/Obj_serial/../write_restart.cpp:414:对‘MPI_Rsend’未定义的引用
collect2: error: ld returned 1 exit status
make[1]: *** [../lmp_serial] 错误 1
make[1]:正在离开目录 `/usr/local/lmp/src/Obj_serial'
make: *** [serial] 错误 2
回复此楼
myloveisyou.
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

heikuyu

新虫 (正式写手)

老师呀,跟我说的不是一回事啊。
myloveisyou.
2楼2014-03-23 11:47:54
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

heikuyu

新虫 (正式写手)


月只蓝: 金币+1, 值得讨论。 2014-03-26 20:28:58
没人来帮忙啊!
这两天又尝试了下,
把mpi的路径改成默认值,倒是可以运行。但不是并行,是串行。
谁能给个意见呀。
myloveisyou.
3楼2014-03-25 22:14:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

qq914346414

金虫 (小有名气)

【答案】应助回帖

★ ★ ★ ★ ★ ★
月只蓝: 金币+1, 鼓励交流! 2014-03-31 16:50:35
月只蓝: 金币+5, 鼓励新手参与讨论。 2014-03-31 16:50:41
引用回帖:
3楼: Originally posted by heikuyu at 2014-03-25 22:14:26
没人来帮忙啊!
这两天又尝试了下,
把mpi的路径改成默认值,倒是可以运行。但不是并行,是串行。
谁能给个意见呀。

对于lib的路径要具体到那个执行包。比如mpi  要指明libmpich.a   把MPI_LIB =        -L/usr/local/mpich3/lib/libmpich.a 同理 fftw 路径也一样 FFT_LIB =       -L/usr/local/fftw/lib/libfftw3.a  当然很多情形下lammps是不支持fftw3 的 一般安装的是fftw2版本!希望这对你有帮助。我也是新手!以后方便可以多交流!
4楼2014-03-29 19:19:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 heikuyu 的主题更新
信息提示
请填处理意见