Hi,

I've attached an arch.make that I have used to compile siesta using
gfortran 4.3.2 and openmpi 1.3.2. It seems to work.

Best regards,

Frederico.


On 05/05/2010 03:04 PM, Henrik Löfås wrote:
> Dear Siesta list,
> 
> I have some problem compiling siesta, I am using GNU Fortran (GCC)
> 4.4.2, and OpenMPI 1.4.2 also compiled with gfortran 4.4.2
> 
> my error looks like:
> 
> /beda/users/home/lofas/siesta-3.0-b/Src/alloc.F90:1705.38:
> 
>     MPI_Sum,0,MPI_Comm_World,MPIerror)
>                                       1
> Error: There is no specific subroutine for the generic 'mpi_reduce' at (1)
> /beda/users/home/lofas/siesta-3.0-b/Src/alloc.F90:1707.41:
> 
>     MPI_MaxLoc,0,MPI_Comm_World,MPIerror)
>                                          1
> Error: There is no specific subroutine for the generic 'mpi_reduce' at (1)
> /beda/users/home/lofas/siesta-3.0-b/Src/alloc.F90:1718.34:
> 
>         1,MPI_Comm_World,MPIerror)
>                                   1
> Error: There is no specific subroutine for the generic 'mpi_send' at (1)
> /beda/users/home/lofas/siesta-3.0-b/Src/alloc.F90:1723.41:
> 
>         1,MPI_Comm_World,Status,MPIerror)
>                                          1
> Error: There is no specific subroutine for the generic 'mpi_recv' at (1)
> make: *** [alloc.o] Error 1
> 
> 
> arch.make
> 
> # Copyright (c) Fundacion General Universidad Autonoma de Madrid:
> # E.Artacho, J.Gale, A.Garcia, J.Junquera, P.Ordejon, D.Sanchez-Portal
> # and J.M.Soler, 1996- .
> #
> # Use of this software constitutes agreement with the full conditions
> # given in the SIESTA license, as signed by all legitimate users.
> #
> SIESTA_ARCH=gfortran-nolibs
> #
> # Serial compilation without the need of any installed libraries.
> #
> FC=mpif90
> #
> FC_ASIS=$(FC)
> #
> 
> FFLAGS=-O0 -DMPI
> FFLAGS_DEBUG= -g -Wall -Wextra
> LDFLAGS=
> RANLIB=echo
> LIBS=
> LIBS=-lmkl_scalapack_lp64 -lmkl_solver_lp64_sequential -lmkl_intel_lp64
> -lmkl_sequential -lmkl_core -lmkl_blacs_openmpi_lp64 -lmkl_lapack -lpthread
> 
> SYS=nag
> FPPFLAGS=-DGFORTRAN -DFC_HAVE_FLUSH -DFC_HAVE_ABORT          # Note this !!
> #COMP_LIBS=linalg.a
> MPI_INTERFACE=libmpi_f90.a
> MPI_INCLUDE=/beda/users/home/lofas/prog/openmpi/include/
> 
> #
> .F.o:
>         $(FC) -c $(FFLAGS) $(INCFLAGS)  $(FPPFLAGS) $<
> .f.o:
>         $(FC) -c $(FFLAGS) $(INCFLAGS)   $<
> .F90.o:
>         $(FC) -c $(FFLAGS) $(INCFLAGS)  $(FPPFLAGS) $<
> .f90.o:
>         $(FC) -c $(FFLAGS) $(INCFLAGS)   $<
> #
> 
> 
> Have anyone some suggestions how to solve it?
> 
> Best Regards
> Henrik 


# 
# This file is part of the SIESTA package.
#
# Copyright (c) Fundacion General Universidad Autonoma de Madrid:
# E.Artacho, J.Gale, A.Garcia, J.Junquera, P.Ordejon, D.Sanchez-Portal
# and J.M.Soler, 1996-2006.
# 
# Use of this software constitutes agreement with the full conditions
# given in the SIESTA license, as signed by all legitimate users.
#
.SUFFIXES:
.SUFFIXES: .f .F .o .a .f90 .F90

SIESTA_ARCH=i686-pc-linux-gnu

FPP=
FPP_OUTPUT= 
FC=mpif90
RANLIB=ranlib

SYS=nag

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

FFLAGS=-g #-Wunused
FPPFLAGS= -DFC_HAVE_FLUSH -DFC_HAVE_ABORT $(DEFS_MPI) $(DEFS_TS)
LDFLAGS=

ARFLAGS_EXTRA=

FCFLAGS_fixed_f=
FCFLAGS_free_f90=
FPPFLAGS_fixed_F=
FPPFLAGS_free_F90=


MKLPATH=/opt/intel/Compiler/11.1/038/mkl/lib/32
BLACS_LIBS=$(MKLPATH)/libmkl_blacs_openmpi.a
SCALAPACK_LIBS=$(MKLPATH)/libmkl_scalapack_core.a


COMP_LIBS=

NETCDF_LIBS=
NETCDF_INTERFACE=

MKLPATH=/opt/intel/Compiler/11.1/038/mkl/lib/32
LIBS=$(SCALAPACK_LIBS) $(BLACS_LIBS) $(MKLPATH)/libmkl_solver_sequential.a 
-Wl,--start-group $(MKLPATH)/libmkl_gf.a $(MKLPATH)/libmkl_sequential.a 
$(MKLPATH)/libmkl_core.a -Wl,--end-group -lpthread

#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=./
DEFS_MPI=-DMPI

#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)  $< 
.F90.o:
        $(FC) -c $(FFLAGS) $(INCFLAGS) $(FPPFLAGS) $(FPPFLAGS_free_F90) $< 
.f.o:
        $(FC) -c $(FFLAGS) $(INCFLAGS) $(FCFLAGS_fixed_f)  $<
.f90.o:
        $(FC) -c $(FFLAGS) $(INCFLAGS) $(FCFLAGS_free_f90)  $<



Responder a