24小时热门版块排行榜    

CyRhmU.jpeg
查看: 794  |  回复: 5
当前主题已经存档。
【有奖交流】积极回复本帖子,参与交流,就有机会分得作者 pengdou 的 20 个金币

pengdou

至尊木虫 (正式写手)

[交流] 【求助】关于siesta3.0并行 编译的问题

请教大家:
我在并行编译siesta3.0时出现以下问题:
Compilation architecture to be used: i686-pc-linux-gnu--Intel
If this is not what you want, create the right
arch.make file using the models in Src/Sys

Hit ^C to abort...
(cd FoX; touch arch.make ; \
         CONFIGURE="/home/doukp/Siesta/parall/siesta-3.0-b/Src/FoX/configure"; \
         $CONFIGURE VPATH="/home/doukp/Siesta/parall/siesta-3.0-b/Src/FoX" \
         FC="/opt/openmpi/bin/mpif90" FCFLAGS="-g -O2" \
         --enable-wcml  || false )
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for linker flag to name executables... -o
checking for Fortran compiler default output file name... conftest
checking whether the Fortran compiler works... configure: error: cannot run Fortran compiled programs.
If you meant to cross compile, use `--host'.
See `config.log' for more details.
make: *** [FoX/.config] 错误


但是我串行编译siesta3.0,没出错,这是怎么回事啊
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

pengdou

至尊木虫 (正式写手)

附arch.mke文件

我的arch.makes是
FPP=
FPP_OUTPUT=
FC=/opt/openmpi/bin/mpif90
RANLIB=ranlib

SYS=nag

SP_KIND=4
DP_KIND=8
KINDS=$(SP_KIND) $(DP_KIND)

FFLAGS=-g -O2
FPPFLAGS= -DFC_HAVE_FLUSH -DFC_HAVE_ABORT
LDFLAGS=

ARFLAGS_EXTRA=

FCFLAGS_fixed_f=
FCFLAGS_free_f90=
FPPFLAGS_fixed_F=
FPPFLAGS_free_F90=

#BLAS_LIBS=-lmkl_ia32  -lguide -lpthread
#LAPACK_LIBS=-L/opt/intel/mkl/10.0.2.018 b/32
#BLACS_LIBS=
#SCALAPACK_LIBS=

#SCA=-L/opt/intel/mkl/10.0.2.018 b/32 -lscalapack -lblacs -lmkl_ia32 -llapack -lguide
#SCA=-L/opt/intel/mkl/10.0.2.018 b/32 -lscalapack -lblacs -lmkl_ia32  -lguide
SCA=-L/opt/intel/mkl/10.0.2.018 b/32 -lmkl_scalapack -lmkl_blacs_openmpi -lmkl_ia32  -lguide -lpthread

#COMP_LIBS=dc_lapack.a liblapack.a libblas.a

NETCDF_LIBS=
NETCDF_INTERFACE=

LIBS=$(SCA) $(SCALAPACK_LIBS) $(BLACS_LIBS) $(LAPACK_LIBS) $(BLAS_LIBS) $(NETCDF_LIBS)

#SIESTA needs an F90 interface to MPI
#This will give you SIESTA's own implementation
#If your compiler vendor offers an alternative, you may change
#to it here.
MPI_INTERFACE=libmpi_f90.a
MPI_INCLUDE=/opt/openmpi/include
DEFS_MPI=-DMPI
DEFS= $(DEFS_MPI)

#Dependency rules are created by autoconf according to whether
#discrete preprocessing is necessary or not.
.F.o:
        $(FC) -c $(FFLAGS) $(INCFLAGS) $(FPPFLAGS) $(FPPFLAGS_fixed_F)  $(DEFS) $<
.F90.o:
        $(FC) -c $(FFLAGS) $(INCFLAGS) $(FPPFLAGS) $(FPPFLAGS_free_F90) $(DEFS) $<
.f.o:
        $(FC) -c $(FFLAGS) $(INCFLAGS) $(FCFLAGS_fixed_f)  $<
.f90.o:
        $(FC) -c $(FFLAGS) $(INCFLAGS) $(FCFLAGS_free_f90)  $<
2楼2010-01-13 20:03:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

pengdou

至尊木虫 (正式写手)

config.log

In config.log,it show:

.....
configure:2078: result: conftest
configure:2083: checking whether the Fortran compiler works
configure:2093: ./conftest
./conftest: error while loading shared libraries: libmpi_f90.so.0: cannot open shared object file: No such file or directory
configure:2096: $? = 127
configure:2105: error: cannot run Fortran compiled programs.
If you meant to cross compile, use `--host'.
......
3楼2010-01-13 21:18:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fuzp

铁杆木虫 (正式写手)

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
pengdou(金币+10,VIP+0):谢谢捧场 1-14 09:07
aylayl08(金币+2,VIP+0):谢谢提示 1-14 09:09
从错误上看,checking whether the Fortran compiler works... configure: error: cannot run Fortran compiled programs.
应该是你的编译器不正常,既然提示说 libmpi_f90.so.0找不到,那就看看这个有没有。
也可以换库文件看看。BLAS_LIBS, LAPACK_LIBS, BLACS_LIBS, SCALAPACK_LIBS这些,可以试试系统自带的库。
4楼2010-01-14 08:54:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

pengdou

至尊木虫 (正式写手)

找到错误了


aylayl08(金币+1,VIP+0):感谢反馈信息 1-14 19:40
错误有两个:
1是环境变量没有设置好,没有添加openmpi的lib,
后来又发现openmpi也装的有问题,重新装过之后,就都解决了,呵呵
5楼2010-01-14 09:09:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hadone

银虫 (小有名气)

你这个编译用的是动态函数库?有没有用静态函数库的实例呢?谢谢。
6楼2010-03-24 19:23:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 pengdou 的主题更新
普通表情 高级回复(可上传附件)
信息提示
请填处理意见