[petsc-users] Can't compile code after upgrading to VS2017 and Intel One API + PETSc 3.15

Satish Balay balay at mcs.anl.gov
Wed Apr 14 20:06:26 CDT 2021


>>>>>>
C_VERSION = Win32 Development Tool Front End, version 1.11.3 Mon, Feb 27, 2017 11:10:38 AM
\nMicrosoft (R) C/C++ Optimizing Compiler Version 19.16.27045 for x64
MPICC_SHOW = Unavailable
Cxx_VERSION = Win32 Development Tool Front End, version 1.11.3 Mon, Feb 27, 2017 11:10:38 AM
\nMicrosoft (R) C/C++ Optimizing Compiler Version 19.16.27045 for x64
MPICXX_SHOW = Unavailable
FC_VERSION = Win32 Development Tool Front End, version 1.11.3 Mon, Feb 27, 2017 11:10:38 AM
\nIntel(R) Fortran Intel(R) 64 Compiler Classic for applications running on Intel(R) 64, Version 2021.2.0 Build 20210228_000000
<<<<

I'm not sure what happened here. You might want to just manually fix up this file

C_VERSION = Win32 Development Tool Front End, version 1.11.3 Mon, Feb 27, 2017 11:10:38 AM\nMicrosoft (R) C/C++ Optimizing Compiler Version 19.16.27045 for x64
MPICC_SHOW = Unavailable
Cxx_VERSION = Win32 Development Tool Front End, version 1.11.3 Mon, Feb 27, 2017 11:10:38 AM\nMicrosoft (R) C/C++ Optimizing Compiler Version 19.16.27045 for x64
MPICXX_SHOW = Unavailable
FC_VERSION = Win32 Development Tool Front End, version 1.11.3 Mon, Feb 27, 2017 11:10:38 AM\nIntel(R) Fortran Intel(R) 64 Compiler Classic for applications running on Intel(R) 64, Version 2021.2.0 Build 20210228_000000

Satish

On Thu, 15 Apr 2021, TAY wee-beng wrote:

> Hi all,
> 
> I have attached the req file
> 
> Thank you very much.
> 
> Yours sincerely,
> 
> ================================================
> TAY Wee-Beng 郑伟明 (Zheng Weiming)
> Personal research webpage: _http://tayweebeng.wixsite.com/website_
> Youtube research showcase: _https://goo.gl/PtvdwQ_
> linkedin: _https://www.linkedin.com/in/tay-weebeng_
> ================================================
> 
> On 14/4/2021 11:55 pm, Satish Balay wrote:
> > Please send the file
> > /cygdrive/d/Lib/petsc-3.15.0_win64_impi_vs2017//lib/petsc/conf/petscvariables
> >
> > Satish
> >
> > On Wed, 14 Apr 2021, TAY wee-beng wrote:
> >
> >> Hi,
> >>
> >> I redo the installation:
> >>
> >> /*Now to install the libraries do:*//*
> >> *//*make PETSC_DIR=/cygdrive/d/wtay/Downloads/Source_codes/petsc-3.15.0
> >> PETSC_ARCH=petsc-3.15.0_win64_impi_vs2017 install*//*
> >> *//*=========================================*//*
> >> *//*
> >> *//*DELL-T7610+wtay at DELL-T7610
> >> /cygdrive/d/wtay/Downloads/Source_codes/petsc-3.15.0*//*
> >> *//*$ make PETSC_DIR=/cygdrive/d/wtay/Downloads/Source_codes/petsc-3.15.0
> >> PETSC_ARCH=petsc-3.15.0_win64_impi_vs2017 install*//*
> >> *//**** Using
> >> PETSC_DIR=/cygdrive/d/wtay/Downloads/Source_codes/petsc-3.15.0
> >> PETSC_ARCH=petsc-3.15.0_win64_impi_vs2017 ****//*
> >> *//**** Installing PETSc at prefix location:
> >> /cygdrive/d/Lib/petsc-3.15.0_win64_impi_vs2017  ****//*
> >> *//*====================================*//*
> >> *//*Install complete.*//*
> >> *//*Now to check if the libraries are working do (in current
> >> directory):*//*
> >> *//*make PETSC_DIR=/cygdrive/d/Lib/petsc-3.15.0_win64_impi_vs2017
> >> PETSC_ARCH="" check*//*
> >> *//*====================================*//*
> >> *//*/usr/bin/make  --no-print-directory -f makefile
> >> PETSC_ARCH=petsc-3.15.0_win64_impi_vs2017
> >> PETSC_DIR=/cygdrive/d/wtay/Downloads/Source_codes/petsc-3.15.0
> >> mpi4py-install
> >> petsc4py-install libmesh-install mfem-insta*//*
> >> *//*ll slepc-install hpddm-install amrex-install bamg-install*//*
> >> *//*make[2]: Nothing to be done for 'mpi4py-install'.*//*
> >> *//*make[2]: Nothing to be done for 'petsc4py-install'.*//*
> >> *//*make[2]: Nothing to be done for 'libmesh-install'.*//*
> >> *//*make[2]: Nothing to be done for 'mfem-install'.*//*
> >> *//*make[2]: Nothing to be done for 'slepc-install'.*//*
> >> *//*make[2]: Nothing to be done for 'hpddm-install'.*//*
> >> *//*make[2]: Nothing to be done for 'amrex-install'.*//*
> >> *//*make[2]: Nothing to be done for 'bamg-install'.*//*
> >> */
> >> DELL-T7610+wtay at DELL-T7610
> >> /cygdrive/d/wtay/Downloads/Source_codes/petsc-3.15.0
> >>
> >> I ran the check:
> >>
> >> /*$ make PETSC_DIR=/cygdrive/d/Lib/petsc-3.15.0_win64_impi_vs2017
> >> PETSC_ARCH="" check*//*
> >> *//*/cygdrive/d/Lib/petsc-3.15.0_win64_impi_vs2017//lib/petsc/conf/petscvariables:5:
> >> *** missing separator.  Stop.*/
> >>
> >> Why is this happening?
> >>
> >> Thank you very much.
> >>
> >> Yours sincerely,
> >>
> >> ================================================
> >> TAY Wee-Beng 郑伟明 (Zheng Weiming)
> >> Personal research webpage: _http://tayweebeng.wixsite.com/website_
> >> Youtube research showcase: _https://goo.gl/PtvdwQ_
> >> linkedin: _https://www.linkedin.com/in/tay-weebeng_
> >> ================================================
> >>
> >> On 14/4/2021 6:01 pm, Mark Adams wrote:
> >>> You have PETSC_ARCH=petsc-3.15.0_win64_impi_vs2017
> >>> I think you use PETSC_ARCH="" for installed libs.
> >>> When you do the install it will tell you exactly what to run to run
> >>> "check".
> >>> You might double check that .
> >>> Mark
> >>>
> >>> On Wed, Apr 14, 2021 at 4:10 AM TAY wee-beng <zonexo at gmail.com
> >>> <mailto:zonexo at gmail.com>> wrote:
> >>>
> >>>      Hi Barry,
> >>>
> >>>      Ops, which dir should I run /*export PETSC_DIR=`pwd`*//*
> >>>      */
> >>>
> >>>      Maybe I ran it wrongly initially at where the lib is stored:
> >>>      /*/cygdrive/d/Lib/petsc-3.15.0_win64_impi_vs2017/*//*
> >>>      */
> >>>
> >>>      My source is at
> >>>
> >>>      /*/cygdrive/d/wtay/Downloads/Source_codes/petsc-3.15.0*/
> >>>
> >>>      Now I ran:
> >>>
> >>>      /*export PETSC_DIR=`pwd`*//*
> >>>      *//*cd src/ksp/ksp/tutorials/*//*
> >>>      *//*make ex2f*/
> >>>
> >>>      /*/cygdrive/d/wtay/Downloads/Source_codes/petsc-3.15.0/lib/petsc/bin/win32fe/win32fe
> >>>      ifort -MD -Z7 -fpp  -MD -Z7 -fpp
> >>>      -I/cygdrive/d/wtay/Downloads/Source_codes/petsc-3.15.0/include
> >>>      -I/cygdrive/d/wtay/Downloads/S*//*
> >>>      *//*ource_codes/petsc-3.15.0/petsc-3.15.0_win64_impi_vs2017/include
> >>>      -I/cygdrive/c/Program\ Files\
> >>>      \(x86\)/Intel/oneAPI/mpi/latest/include     ex2f.F90
> >>>      -R/cygdrive/d/wtay/Downloads/Source_codes/petsc-3.15.0/petsc-3.*//*
> >>>      *//*15.0_win64_impi_vs2017/lib
> >>>      -L/cygdrive/d/wtay/Downloads/Source_codes/petsc-3.15.0/petsc-3.15.0_win64_impi_vs2017/lib
> >>>      -R/cygdrive/d/Lib/petsc-3.15.0_win64_impi_vs2017/lib
> >>>      -L/cygdrive/d/Lib/petsc-3.15.0_win64_impi*//*
> >>>      *//*_vs2017/lib -lpetsc -lflapack -lfblas /cygdrive/c/Program\
> >>>      Files\ \(x86\)/Intel/oneAPI/mpi/latest/lib/debug/impi.lib
> >>>      /cygdrive/c/Program\ Files\
> >>>      \(x86\)/Intel/oneAPI/mpi/latest/lib/debug/impicxx.lib
> >>>      /cygdrive/c/*//*
> >>>      *//*Program\ Files\
> >>>      \(x86\)/Intel/oneAPI/mpi/latest/lib/libmpi_ilp64.lib Gdi32.lib
> >>>      User32.lib Advapi32.lib Kernel32.lib Ws2_32.lib -o ex2f*//*
> >>>      *//*ifort: command line warning #10006: ignoring unknown option
> >>>      '/R/cygdrive/d/wtay/Downloads/Source_codes/petsc-3.15.0/petsc-3.15.0_win64_impi_vs2017/lib'*//*
> >>>      *//*ifort: command line warning #10006: ignoring unknown option
> >>>      '/R/cygdrive/d/Lib/petsc-3.15.0_win64_impi_vs2017/lib'*//*
> >>>      *//*ex2f.F90(80): error #6405: The same named entity from
> >>>      different modules and/or program units cannot be referenced.
> >>>      [PETSC_COMM_WORLD]*//*
> >>>      *//*      call MPI_Comm_rank(PETSC_COMM_WORLD,rank,ierr)*//*
> >>>      *//*-------------------------^*//*
> >>>      *//*ex2f.F90(80): error #7112: This actual argument must not be
> >>>      the name of a procedure. [PETSC_COMM_WORLD]*//*
> >>>      *//*      call MPI_Comm_rank(PETSC_COMM_WORLD,rank,ierr)*//*
> >>>      *//*-------------------------^*//*
> >>>      *//*ex2f.F90(81): error #6405: The same named entity from
> >>>      different modules and/or program units cannot be referenced.
> >>>      [PETSC_COMM_WORLD]*//*
> >>>      *//*      call MPI_Comm_size(PETSC_COMM_WORLD,size,ierr)*//*
> >>>      *//*-------------------------^*//*
> >>>      *//*ex2f.F90(81): error #7112: This actual argument must not be
> >>>      the name of a procedure. [PETSC_COMM_WORLD]*//*
> >>>      *//*      call MPI_Comm_size(PETSC_COMM_WORLD,size,ierr)*//*
> >>>      *//*-------------------------^*//*
> >>>      *//*ex2f.F90(93): error #6405: The same named entity from
> >>>      different modules and/or program units cannot be referenced.
> >>>      [PETSC_COMM_WORLD]*//*
> >>>      *//*      call MatCreate(PETSC_COMM_WORLD,A,ierr)*//*
> >>>      *//*---------------------^*//*
> >>>      *//*ex2f.F90(93): error #7112: This actual argument must not be
> >>>      the name of a procedure. [PETSC_COMM_WORLD]*//*
> >>>      *//*      call MatCreate(PETSC_COMM_WORLD,A,ierr)*//*
> >>>      *//*---------------------^*//*
> >>>      *//*ex2f.F90(159): error #6405: The same named entity from
> >>>      different modules and/or program units cannot be referenced.
> >>>      [PETSC_COMM_WORLD]*//*
> >>>      *//*      call
> >>>      VecCreateMPI(PETSC_COMM_WORLD,PETSC_DECIDE,m*n,u,ierr)*//*
> >>>      *//*------------------------^*//*
> >>>      *//*ex2f.F90(159): error #7112: This actual argument must not be
> >>>      the name of a procedure. [PETSC_COMM_WORLD]*//*
> >>>      *//*      call
> >>>      VecCreateMPI(PETSC_COMM_WORLD,PETSC_DECIDE,m*n,u,ierr)*//*
> >>>      *//*------------------------^*//*
> >>>      *//*ex2f.F90(171): error #6405: The same named entity from
> >>>      different modules and/or program units cannot be referenced.
> >>>      [PETSC_COMM_WORLD]*//*
> >>>      *//*         call PetscRandomCreate(PETSC_COMM_WORLD,rctx,ierr)*//*
> >>>      *//*--------------------------------^*//*
> >>>      *//*ex2f.F90(171): error #7112: This actual argument must not be
> >>>      the name of a procedure. [PETSC_COMM_WORLD]*//*
> >>>      *//*         call PetscRandomCreate(PETSC_COMM_WORLD,rctx,ierr)*//*
> >>>      *//*--------------------------------^*//*
> >>>      *//*ex2f.F90(193): error #6405: The same named entity from
> >>>      different modules and/or program units cannot be referenced.
> >>>      [PETSC_COMM_WORLD]*//*
> >>>      *//*      call KSPCreate(PETSC_COMM_WORLD,ksp,ierr)*//*
> >>>      *//*---------------------^*//*
> >>>      *//*ex2f.F90(193): error #7112: This actual argument must not be
> >>>      the name of a procedure. [PETSC_COMM_WORLD]*//*
> >>>      *//*      call KSPCreate(PETSC_COMM_WORLD,ksp,ierr)*//*
> >>>      *//*---------------------^*//*
> >>>      *//*ex2f.F90(319): error #6405: The same named entity from
> >>>      different modules and/or program units cannot be referenced.
> >>>      [PETSC_COMM_WORLD]*//*
> >>>      *//*      call MPI_Comm_rank(PETSC_COMM_WORLD,rank,ierr)*//*
> >>>      *//*-------------------------^*//*
> >>>      *//*ex2f.F90(319): error #7112: This actual argument must not be
> >>>      the name of a procedure. [PETSC_COMM_WORLD]*//*
> >>>      *//*      call MPI_Comm_rank(PETSC_COMM_WORLD,rank,ierr)*//*
> >>>      *//*-------------------------^*//*
> >>>      *//*compilation aborted for ex2f.F90 (code 1)*//*
> >>>      *//*make: ***
> >>>      [/cygdrive/d/wtay/Downloads/Source_codes/petsc-3.15.0/lib/petsc/conf/test:23:
> >>>      ex2f] Error 1*/
> >>>
> >>>
> >>>      I have also attached the "/*make check*/" output. Seems like
> >>>      there's problem with fortran compile.
> >>>
> >>>      Thank you very much.
> >>>
> >>>      Yours sincerely,
> >>>
> >>>      ================================================
> >>>      TAY Wee-Beng 郑伟明 (Zheng Weiming)
> >>>      Personal research webpage: _http://tayweebeng.wixsite.com/website
> >>>      <http://tayweebeng.wixsite.com/website>_
> >>>      Youtube research showcase: _https://goo.gl/PtvdwQ
> >>>      <https://goo.gl/PtvdwQ>_
> >>>      linkedin: _https://www.linkedin.com/in/tay-weebeng
> >>>      <https://www.linkedin.com/in/tay-weebeng>_
> >>>      ================================================
> >>>
> >>>      On 14/4/2021 3:47 pm, Barry Smith wrote:
> >>>>       Please send configure.log and make.log and the results of "make
> >>>>      check" so we have the details on the build process.
> >>>>
> >>>>>      /*No rule to make target
> >>>>>      '/cygdrive/d/Lib/petsc-3.15.0_win64_impi_vs2017/share/petsc/examples/src/ksp/ksp/tutori*//*als/lib/petsc/conf/test'.
> >>>>>      Stop.*/
> >>>>>
> >>>>       Looks funny; it does not seem to separate the PETSc directory
> >>>>      from its configuration directory appropriately.
> >>>>
> >>>>        Are you sure
> >>>>
> >>>>>      /*export PETSC_DIR=`pwd`*//*
> >>>>>      *//*export PETSC_ARCH=petsc-3.15.0_win64_impi_vs2017*/
> >>>>>
> >>>>      are run in the appropriate directory so that PETSC_DIR is correct.
> >>>>
> >>>>      Barry
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>>      On Apr 14, 2021, at 2:20 AM, TAY wee-beng <zonexo at gmail.com
> >>>>>      <mailto:zonexo at gmail.com>> wrote:
> >>>>>
> >>>>>      Hi Mark,
> >>>>>
> >>>>>      I'm not sure what's wrong.
> >>>>>
> >>>>>      In VS2017 + Intel oneAPI,
> >>>>>
> >>>>>      even after adding the full path:
> >>>>>
> >>>>>      #include
> >>>>>      <D:/Lib/petsc-3.15.0_win64_impi_vs2017/include/petsc/finclude/petscksp.h>
> >>>>>
> >>>>>      I got a new error:
> >>>>>
> >>>>>      /*Compiling with Intel® Fortran Compiler Classic 2021.2.0
> >>>>>      [Intel(R) 64]...*//*
> >>>>>      *//*ex2f.F90*//*
> >>>>>      *//*petscksp.h(8): #error: can't find include file:
> >>>>>      petsc/finclude/petscpc.h*//*
> >>>>>      *//*ex2f : error PRJ0019: A tool returned an error code*/
> >>>>>
> >>>>>      Note that I have also specified the include dir in the properties:
> >>>>>
> >>>>>      /*Debug/;$(PETSC_DIR);$(PETSC_DIR)/include;$(I_MPI_ONEAPI_ROOT)/include*/
> >>>>>
> >>>>>      I also tried in cygwin:
> >>>>>
> >>>>>      /*export PETSC_DIR=`pwd`*//*
> >>>>>      *//*export PETSC_ARCH=petsc-3.15.0_win64_impi_vs2017*//*
> >>>>>      *//*make ex2f*/
> >>>>>
> >>>>>      I got the error:
> >>>>>
> >>>>>      /*$ make ex2f*//*
> >>>>>      *//*makefile:41:
> >>>>>      /cygdrive/d/Lib/petsc-3.15.0_win64_impi_vs2017/share/petsc/examples/src/ksp/ksp/tutorials/lib/petsc/conf/te*//*st:
> >>>>>      No such file or directory*//*
> >>>>>      *//*make: *** No rule to make target
> >>>>>      '/cygdrive/d/Lib/petsc-3.15.0_win64_impi_vs2017/share/petsc/examples/src/ksp/ksp/tutori*//*als/lib/petsc/conf/test'.
> >>>>>      Stop.*/
> >>>>>
> >>>>>      Somehow it just doesn't work. Building the library has no
> >>>>>      problem though.
> >>>>>
> >>>>>      I wonder what's wrong.
> >>>>>
> >>>>>
> >>>>>      Thank you very much.
> >>>>>
> >>>>>      Yours sincerely,
> >>>>>
> >>>>>      ================================================
> >>>>>      TAY Wee-Beng 郑伟明 (Zheng Weiming)
> >>>>>      Personal research webpage:
> >>>>>      _http://tayweebeng.wixsite.com/website
> >>>>>      <http://tayweebeng.wixsite.com/website>_
> >>>>>      Youtube research showcase: _https://goo.gl/PtvdwQ
> >>>>>      <https://goo.gl/PtvdwQ>_
> >>>>>      linkedin: _https://www.linkedin.com/in/tay-weebeng
> >>>>>      <https://www.linkedin.com/in/tay-weebeng>_
> >>>>>      ================================================
> >>>>>
> >>>>>      On 14/4/2021 9:31 am, Mark Adams wrote:
> >>>>>>      PETSc has changed Fortran syntax since v3.9. You should
> >>>>>>      upgrade. Look at examples for how to use modules etc.
> >>>>>>
> >>>>>>
> >>>>>>          /*Compiling with Intel® Fortran Compiler Classic 2021.2.0
> >>>>>>          [Intel(R) 64]...*//*
> >>>>>>          *//*global.F90*//*
> >>>>>>          *//*global.F90(3): #error: can't find include file:
> >>>>>>          petsc/finclude/petsc.h*//*
> >>>>>>          *//*global.F90(937): #error: can't find include file:
> >>>>>>          petsc/finclude/petsc.h*/
> >>>>>>
> >>>>>>
> >>>>>>      It looks like you might not have your PETSC_ARCH variable set.
> >>>>>>      You should get a full path to /finclude/petsc.h. Look at the
> >>>>>>      compile line.
> >>>>>>
> >>>>>>      There are PETSc examples that you you can make to see an
> >>>>>>      example of a correct make. For example,
> >>>>>>      > cd petsc/src/ksp/ksp/tutorials
> >>>>>>       >  >  >  > make ex2f
> >>>>>>
> >>>>>>      should make an executable and you can look at the compile and
> >>>>>>      link lines, and compare to what you are using.
> >>>>>>
> >>>>>>      Mark
> >>>>>>
> >>>>>>
> >>>>>>          --
> >>>>>>
> >>>>>>          Thank you very much.
> >>>>>>
> >>>>>>          Yours sincerely,
> >>>>>>
> >>>>>>          ================================================
> >>>>>>          TAY Wee-Beng 郑伟明 (Zheng Weiming)
> >>>>>>          Personal research webpage:
> >>>>>>          _http://tayweebeng.wixsite.com/website
> >>>>>>          <http://tayweebeng.wixsite.com/website>_
> >>>>>>          Youtube research showcase: _https://goo.gl/PtvdwQ
> >>>>>>          <https://goo.gl/PtvdwQ>_
> >>>>>>          linkedin: _https://www.linkedin.com/in/tay-weebeng
> >>>>>>          <https://www.linkedin.com/in/tay-weebeng>_
> >>>>>>          ================================================
> >>>>>>
> 


More information about the petsc-users mailing list