[petsc-users] compile petsc with intel compiler
Michael Povolotskyi
mpovolot at purdue.edu
Wed Jul 10 12:25:57 CDT 2013
Hello everybody,
with two tricks I managed to build petsc (the real double precision
number version).
The tricks are as follows:
1) add the following to the linker flags:
-L/opt/intel/lib/intel64 -Wl,-rpath=/opt/intel/lib/intel64 -lintlc
This makes configuration to run
2) add the following to the compiler options:
-I /usr/include/x86_64-linux-gnu/c++/4.7
This allows to compile the source
Thanks to everybody for help.
Michael.
On 07/10/2013 11:12 AM, Satish Balay wrote:
> Hm - thats wierd. Was it installed by dpkg or something else?
> On my ubuntu 12.04 box - I get:
>
> balay at petsc^~ $ locate bits/c++config.h
> /usr/include/c++/4.4/x86_64-linux-gnu/32/bits/c++config.h
> /usr/include/c++/4.4/x86_64-linux-gnu/bits/c++config.h
> /usr/include/c++/4.6/x86_64-linux-gnu/32/bits/c++config.h
> /usr/include/c++/4.6/x86_64-linux-gnu/bits/c++config.h
>
>
> You can try specifing the include path with CXXCPPFLAGS [for the c++ compiler]
>
> Satish
>
> On Wed, 10 Jul 2013, Michael Povolotskyi wrote:
>
>> Hi Satish,
>> it looks like I have this file but not in "standard" location:
>> locate bits/c++config.h
>> /usr/include/x86_64-linux-gnu/c++/4.7/bits/c++config.h
>> /usr/share/gccxml-0.9/GCC/4.4/bits/c++config.h
>> /usr/share/gccxml-0.9/GCC/4.6/bits/c++config.h
>> /usr/share/gccxml-0.9/GCC/4.7/bits/c++config.h
>>
>>
>> Should I try to add -I usr/include/x86_64-linux-gnu/c++/4.7/ to the CPPLAGS?
>> Michael.
>>
>> On 07/10/2013 10:41 AM, Satish Balay wrote:
>>> Perhaps stuff is not installed correctly on this machine?
>>>
>>> [petsc:~] petsc> dpkg -S /usr/include/c++/4.6/bits/stl_algobase.h
>>> libstdc++6-4.6-dev: /usr/include/c++/4.6/bits/stl_algobase.h
>>> [petsc:~] petsc> dpkg -S
>>> /usr/include/c++/4.6/x86_64-linux-gnu/bits/c++config.h
>>> libstdc++6-4.6-dev: /usr/include/c++/4.6/x86_64-linux-gnu/bits/c++config.h
>>> [petsc:~] petsc>
>>>
>>>
>>> So both bits/stl_algobase.h and bits/c++config.h are installed by libstdc++
>>> package.
>>>
>>> What do you have for:
>>>
>>> ls /usr/include/c++/4.7/bits/stl_algobase.h
>>> ls /usr/include/c++/4.7/x86_64-linux-gnu/bits/c++config.h
>>> dpkg -S /usr/include/c++/4.7/bits/stl_algobase.h
>>> dpkg -S /usr/include/c++/4.7/x86_64-linux-gnu/bits/c++config.h
>>>
>>> [perhaps the files exist - but the intel compiler is not finding it?]
>>>
>>> Satish
>>>
>>>
>>> On Wed, 10 Jul 2013, Michael Povolotskyi wrote:
>>>
>>>> Thank you Matt.
>>>> Unfortunately 'make all-legacy' gives the same error:
>>>> =========================================
>>>> libfast in: /home/mpovolot/Code_intel/libs/petsc/build-real/src
>>>> libfast in: /home/mpovolot/Code_intel/libs/petsc/build-real/src/sys
>>>> libfast in:
>>>> /home/mpovolot/Code_intel/libs/petsc/build-real/src/sys/classes
>>>> libfast in:
>>>> /home/mpovolot/Code_intel/libs/petsc/build-real/src/sys/classes/viewer
>>>> libfast in:
>>>> /home/mpovolot/Code_intel/libs/petsc/build-real/src/sys/classes/viewer/impls
>>>> libfast in:
>>>> /home/mpovolot/Code_intel/libs/petsc/build-real/src/sys/classes/viewer/impls/socket
>>>> /usr/include/c++/4.7/bits/stl_algobase.h(60): catastrophic error: cannot
>>>> open
>>>> source file "bits/c++config.h"
>>>> #include <bits/c++config.h>
>>>> ^
>>>>
>>>> compilation aborted for send.c (code 4)
>>>>
>>>>
>>>>
>>>> Michael.
>>>>
>>>> On 07/10/2013 08:05 AM, Matthew Knepley wrote:
>>>>> On Wed, Jul 10, 2013 at 12:00 AM, Michael Povolotskyi
>>>>> <mpovolot at purdue.edu
>>>>> <mailto:mpovolot at purdue.edu>> wrote:
>>>>>
>>>>> Hello everybody,
>>>>> unfortunately building petsc without fortran cannot work for me
>>>>> because I need MUMPs that requires Scalapack that needs fortran. I
>>>>> played with the options. As result the configuration runs okay,
>>>>> the build gives an error that does not seem to be related to
>>>>> fortran:
>>>>>
>>>>>
>>>>> Quit building with CMake. It complicates everything. Use the legacy
>>>>> build.
>>>>>
>>>>> Matt
>>>>>
>>>>> [ 0%] Building CXX object
>>>>> CMakeFiles/petscsys.dir/src/sys/totalview/tv_data_display.c.o
>>>>> Building Fortran object
>>>>> CMakeFiles/petscsys.dir/src/sys/f90-mod/petscsysmod.F.o
>>>>> Building CXX object
>>>>> CMakeFiles/petscsys.dir/src/sys/python/pythonsys.c.o
>>>>> [ 0%] /usr/include/c++/4.7/bits/stl_algobase.h(60): catastrophic
>>>>> error: cannot open source file "bits/c++config.h"
>>>>> #include <bits/c++config.h>
>>>>> ^
>>>>>
>>>>> /usr/include/c++/4.7/bits/stl_algobase.h(60): catastrophic error:
>>>>> cannot open source file "bits/c++config.h"
>>>>> #include <bits/c++config.h>
>>>>> ^
>>>>>
>>>>> compilation aborted for
>>>>> /home/mpovolot/Code_intel/libs/petsc/build-real/src/sys/info/verboseinfo.c
>>>>> (code 4)
>>>>> compilation aborted for
>>>>> /home/mpovolot/Code_intel/libs/petsc/build-real/src/sys/logging/plog.c
>>>>> (code 4)
>>>>>
>>>>> I attach here the log files.
>>>>> Any advise is highly appreciated.
>>>>> Michael.
>>>>>
>>>>> On 7/9/2013 4:34 PM, Matthew Knepley wrote:
>>>>>> On Tue, Jul 9, 2013 at 3:32 PM, Michael Povolotskyi
>>>>>> <mpovolot at purdue.edu <mailto:mpovolot at purdue.edu>> wrote:
>>>>>>
>>>>>> If I do not need to use petsc in fortran programs, can I
>>>>>> build petsc without fortran and thus avoid this situation?
>>>>>> Michael.
>>>>>>
>>>>>>
>>>>>> On 07/09/2013 04:31 PM, Satish Balay wrote:
>>>>>>
>>>>>> For some reason this issue comes up with mpi.mod provided
>>>>>> by intel
>>>>>> mpi.
>>>>>>
>>>>>> We have a configure test for it - but looks like its not
>>>>>> sufficient to
>>>>>> catch this issue.
>>>>>>
>>>>>> satish
>>>>>>
>>>>>>
>>>>>> On Tue, 9 Jul 2013, Matthew Knepley wrote:
>>>>>>
>>>>>> On Tue, Jul 9, 2013 at 3:11 PM, Michael Povolotskyi
>>>>>> <mpovolot at purdue.edu
>>>>>> <mailto:mpovolot at purdue.edu>>wrote:
>>>>>>
>>>>>> Dear Petsc users and developers,
>>>>>> I'm trying to build petsc with Intel compiler.
>>>>>>
>>>>>> 1) First, ask yourself whether you really want to
>>>>>> build with the Intel
>>>>>> compiler. Then ask again.
>>>>>>
>>>>>> 2) Do you need Fortran? If not, turn it off
>>>>>> --with-fc=0.
>>>>>>
>>>>>> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>>>>>>
>>>>>> Matt
>>>>>>
>>>>>> 3) If you want Fortran and Intel (and have a hatred
>>>>>> of free time), try the
>>>>>> legacy build
>>>>>>
>>>>>> make all-legacy
>>>>>>
>>>>>> 4) If this is still broken, send the new make.log
>>>>>>
>>>>>> Thanks,
>>>>>>
>>>>>> Matt
>>>>>>
>>>>>>
>>>>>> The configuration process runs okay (I attach the
>>>>>> log here),
>>>>>> but I get an error when I build it:
>>>>>> -- Configuring done
>>>>>> -- Generating done
>>>>>> -- Build files have been written to:
>>>>>> /home/mpovolot/Code_intel/**
>>>>>> libs/petsc/build-real/linux
>>>>>> Scanning dependencies of target petscsys
>>>>>> [ 0%] [ 0%] [ 0%] Building CXX object
>>>>>> CMakeFiles/petscsys.dir/src/**
>>>>>> sys/info/verboseinfo.c.o
>>>>>> Building Fortran object
>>>>>> CMakeFiles/petscsys.dir/src/**
>>>>>> sys/f90-mod/petscsysmod.F.o
>>>>>> Building CXX object
>>>>>> CMakeFiles/petscsys.dir/src/**
>>>>>> sys/totalview/tv_data_display.**c.o
>>>>>> Building CXX object
>>>>>> CMakeFiles/petscsys.dir/src/**sys/python/pythonsys.c.o
>>>>>> Building CXX object
>>>>>> CMakeFiles/petscsys.dir/src/**sys/logging/plog.c.o
>>>>>> /home/mpovolot/Code_intel/**libs/petsc/build-real/src/sys/**
>>>>>> f90-mod/petscsysmod.F:6.11:
>>>>>>
>>>>>> use mpi
>>>>>> 1
>>>>>> Fatal Error: File 'mpi.mod' opened at (1) is not
>>>>>> a GFORTRAN module file
>>>>>> make[6]: ***
>>>>>> [CMakeFiles/petscsys.dir/src/**sys/f90-mod/petscsysmod.F.o]
>>>>>> Error 1
>>>>>> make[6]: *** Waiting for unfinished jobs....
>>>>>> make[5]: *** [CMakeFiles/petscsys.dir/all] Error
>>>>>> 2
>>>>>> make[4]: *** [all] Error 2
>>>>>> make[3]: *** [ccmake] Error 2
>>>>>> make[2]: *** [cmake] Error 2
>>>>>> ****************************ERROR**************************************
>>>>>> Error during compile, check
>>>>>> linux/conf/make.log
>>>>>> Send it and linux/conf/configure.log to
>>>>>> petsc-maint at mcs.anl.gov
>>>>>> <mailto:petsc-maint at mcs.anl.gov>
>>>>>> ************************************************************************
>>>>>>
>>>>>> I attach here the make.log
>>>>>> What is strange to me that it has something to do
>>>>>> with Gfortran, while I
>>>>>> want to build everything with Intel.
>>>>>> Thank you for help,
>>>>>> Michael.
>>>>>>
>>>>>> --
>>>>>> Michael Povolotskyi, PhD
>>>>>> Research Assistant Professor
>>>>>> Network for Computational Nanotechnology
>>>>>> 207 S Martin Jischke Drive
>>>>>> Purdue University, DLR, room 441-10
>>>>>> West Lafayette, Indiana 47907
>>>>>>
>>>>>> phone: +1-765-494-9396 <tel:%2B1-765-494-9396>
>>>>>> fax: +1-765-496-6026 <tel:%2B1-765-496-6026>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> -- What most experimenters take for granted before they begin
>>>>>> their
>>>>>> experiments is infinitely more interesting than any results to
>>>>>> which their experiments lead.
>>>>>> -- Norbert Wiener
>>>>>
>>>>>
>>>>> --
>>>>> What most experimenters take for granted before they begin their
>>>>> experiments
>>>>> is infinitely more interesting than any results to which their
>>>>> experiments
>>>>> lead.
>>>>> -- Norbert Wiener
>>
More information about the petsc-users
mailing list