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

TAY wee-beng zonexo at gmail.com
Wed Apr 14 20:18:44 CDT 2021


Hi Satish,

Sorry, what do you mean by "manually fix up this file"?

Should I edit the petscvariables file?

Do I need to rebuild the lib?

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>_
>>>>>>>>           ================================================
>>>>>>>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20210415/bda69136/attachment-0001.html>


More information about the petsc-users mailing list