[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:22:56 CDT 2021
On Thu, 15 Apr 2021, TAY wee-beng wrote:
> Hi Satish,
>
> Sorry, what do you mean by "manually fix up this file"?
>
> Should I edit the petscvariables file?
yes
>
> Do I need to rebuild the lib?
no
After editing the file - run 'make check'
Satish
>
> I guess this problem is related to the new Intel oneAPI if I'm not wrong. No
> such problem previously.
>
> 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 15/4/2021 9:06 am, Satish Balay wrote:
> > 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