When compiling a package named SIESTA using its makefile, I meet with the problems as follows:
Dragon:~/siesta-2.0/Src$make
Compilation architecture to be used: i686-pc-linux-gnu–Portland
If this is not what you want, create the right
arch.make file using the models in Sys
Hit ^C to abort…
==> Incorporating information about present compilation (compiler and flags)
make[1]: Entering directory /data0/zrh/siesta-2.0/Src' pgf90 -c -g -DFC_HAVE_FLUSH -DFC_HAVE_ABORT compinfo.F90 make[1]: Leaving directory
/data0/zrh/siesta-2.0/Src’
#@rm -f compinfo.F90
(cd wxml ; make module)
/data0/zrh/siesta-2.0/Src/wxml
make[1]: Entering directory `/data0/zrh/siesta-2.0/Src/wxml’
pgf90 -c -g flib_wstml.f90
PGF90-S-0155-Could not resolve generic procedure xml_addattribute (flib_wstml.f90: 81)
PGF90-S-0155-Could not resolve generic procedure xml_addattribute (flib_wstml.f90: 82)
PGF90-S-0155-Could not resolve generic procedure xml_addattribute (flib_wstml.f90: 83)
PGF90-S-0155-Could not resolve generic procedure xml_addattribute (flib_wstml.f90: 84)
PGF90-S-0155-Could not resolve generic procedure xml_addattribute (flib_wstml.f90: 85)
PGF90-S-0155-Could not resolve generic procedure xml_addattribute (flib_wstml.f90: 86)
PGF90-S-0155-Could not resolve generic procedure xml_addattribute (flib_wstml.f90: 87)
PGF90-S-0155-Could not resolve generic procedure xml_addattribute (flib_wstml.f90: 88)
PGF90-S-0155-Could not resolve generic procedure xml_addattribute (flib_wstml.f90: 89)
PGF90-S-0155-Could not resolve generic procedure xml_addattribute (flib_wstml.f90: 90)
0 inform, 0 warnings, 10 severes, 0 fatal for stmaddstarttag
PGF90-S-0155-Could not resolve generic procedure xml_addattribute (flib_wstml.f90: 117)
PGF90-S-0155-Could not resolve generic procedure xml_addattribute (flib_wstml.f90: 118)
…
the code of module flib_wstml.f90 is
module flib_wxml
use m_wxml_text
use m_wxml_core
use m_wxml_overloads
public
end module flib_wxml
and the code of m_wxml_text is
module m_wxml_text
implicit none
!
integer, private, parameter :: sp = selected_real_kind(6,30)
integer, private, parameter :: dp = selected_real_kind(14,100)
!
private
public :: str
interface str
module procedure str_integer_fmt, str_integer, &
str_logical_fmt, str_logical, &
str_real_dp, str_real_sp
end interface
CONTAINS
function str_integer_fmt(i,format) result(s)
integer, intent(in) :: i
character(len=*), intent(in) :: format
character(len=100) :: s
write(s,format) i
s = adjustl(s)
end function str_integer_fmt
function str_integer(i) result(s)
! This will work correctly (return an appropriately-sized
! string) for integers i s.t. -99999999<=i<=999999999
integer, intent(in) :: i
#ifndef WXML_INIT_FIX
character(len=int(merge(log10(real(max(abs(i),1)))+1, &
log10(real(max(abs(i),1)))+2, &
sign(i,1)>0))) :: s