24小时热门版块排行榜    

查看: 3437  |  回复: 22
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

qianbj2006

木虫 (正式写手)

[求助] 编译vasp的lib时就出错,求指点

麻烦帮忙看一下~~编译vasp的lib时就出错,错误信息如下
root@sjtu-ThinkPad-SL:/home/sjtu/Downloads/vasp4.6/vasp/vasp.4.lib# make
ifort -O0 -FI -FR  -c dlexlib.f
dlexlib.f(4): error #7002: Error in opening the compiled module file.  Check INCLUDE paths.   [PRECLIB]
      USE preclib
----------^
dlexlib.f(5): error #6683: A kind type parameter must be a compile-time constant.   [Q]
      IMPLICIT REAL(q) (A-H,O-Z)
--------------------^
dlexlib.f(73): error #7002: Error in opening the compiled module file.  Check INCLUDE paths.   [PRECLIB]
      USE preclib
----------^
dlexlib.f(74): error #6683: A kind type parameter must be a compile-time constant.   [Q]
      IMPLICIT REAL(q) (A-H,O-Z)
--------------------^

----------^
#中间重复,很多6683和7002错误#
--------------------^
dlexlib.f(964): error #6592: This symbol must be a defined parameter, an enumerator, or an argument of an inquiry function that evaluates to a compile-time constant.   [Q]
      PARAMETER (TINY=1.E-10_q,MAXINT=2147483647.E0_q)
----------------------------^
dlexlib.f(964): error #6975: A kind-param must be a digit-string or a scalar-int-constant-name   [Q]
      PARAMETER (TINY=1.E-10_q,MAXINT=2147483647.E0_q)
----------------------------^
dlexlib.f(1084): catastrophic error: Too many errors, exiting
compilation aborted for dlexlib.f (code 1)
make: *** [dlexlib.o] Error 1

makefile文件基本没改
只改了FC=ifort
全文:
root@sjtu-ThinkPad-SL:/home/sjtu/Downloads/vasp4.6/vasp/vasp

.SUFFIXES: .inc .f .F
#-----------------------------------------------------------------------
# Makefile for Portland Group F90/HPF compiler
# the makefile was tested only under Linux on Intel platforms
# however it might work on other platforms as well
#
# this release of vasp.4.lib contains lapack v2.0
# this can be compiled with pgf90 compiler if the option -O1 is used
#
# Mind: one user reported that he had to copy preclib.F diolib.F
#  dlexlib.F and drdatab.F to the directory vasp.4.4, compile the files
#  there and link them directly  into vasp
#  for no obvious reason these files could not be linked from the library
#
#-----------------------------------------------------------------------

# C-preprocessor
CPP     = gcc -E -P -C $*.F >$*.f
FC=ifort

CFLAGS = -O
FFLAGS = -O0 -FI
FREE   =  -FR

DOBJ =  preclib.o timing_.o derrf_.o dclock_.o  diolib.o dlexlib.o drdatab.o


#-----------------------------------------------------------------------
# general rules
#-----------------------------------------------------------------------

libdmy.a: $(DOBJ) lapack_double.o linpack_double.o lapack_atlas.o
        -rm libdmy.a
        ar vq libdmy.a $(DOBJ)

# files which do not require autodouble
lapack_min.o: lapack_min.f
        $(FC) $(FFLAGS) $(NOFREE) -c lapack_min.f
lapack_double.o: lapack_double.f
        $(FC) $(FFLAGS) $(NOFREE) -c lapack_double.f
lapack_single.o: lapack_single.f
        $(FC) $(FFLAGS) $(NOFREE) -c lapack_single.f
lapack_atlas.o: lapack_atlas.f
        $(FC) $(FFLAGS) $(NOFREE) -c lapack_atlas.f
linpack_double.o: linpack_double.f
        $(FC) $(FFLAGS) $(NOFREE) -c linpack_double.f
linpack_single.o: linpack_single.f
        $(FC) $(FFLAGS) $(NOFREE) -c linpack_single.f

.c.o:
        $(CC) $(CFLAGS) -c $*.c
.F.o:
        $(CPP)
        $(FC) $(FFLAGS) $(FREE) $(INCS) -c $*.f
.F.f:
        $(CPP)
.f.o:
        $(FC) $(FFLAGS) $(FREE) $(INCS) -c $*.f
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

enola

捐助贵宾 (正式写手)

排除你文件出错的可能性啊:
先which ifort和icc下,看你的intel编译器有没有对,然后
cp ./makefile.linux_intel_ifc ./makefile

ifc--》ifort
gcc-->icc
make
祝你好运
timeflies..
19楼2011-11-27 16:19:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

enola

捐助贵宾 (正式写手)

★ ★
franch(金币+2): 鼓励交流,,呵呵 2011-11-28 21:43:34
我觉得,最好不要那么用。。
timeflies..
21楼2011-11-28 08:37:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 qianbj2006 的主题更新
信息提示
请填处理意见