[petsc-users] Building petsc4py / mpi4py
Barry Smith
bsmith at mcs.anl.gov
Mon Jan 23 10:39:12 CST 2017
mpi4py.py and petsc4py.py should have a --with-mpi/petsc4py-python=fullpathforpython and use that otherwise use the python in the path ( have a warning box if the python in the path is different from the python being used for configure)
Barry
> On Jan 23, 2017, at 9:22 AM, Satish Balay <balay at mcs.anl.gov> wrote:
>
> Looks like --download-petsc4py [and --download-mpi4py] uses python
> from PATH - and not the one used by configure.
>
> 'mpi4py-1.3.1-py3.6.egg-info' suggests that default 'python' in PATH is python-3.6. So try:
>
> python RBF_Load.py
>
> Should we use the same python for configure and all external python packages?
> [petsc configure is limited to python2 - but petsc4py works with python3]
> How about other externalpackages that use python? [scientificpython.py etc..
>
> Satish
>
> On Mon, 23 Jan 2017, Florian Lindner wrote:
>
>> Hello,
>>
>> I try to build petsc from the maint branch together with petsc4py and mpi4py
>>
>> python2 configure --download-petsc4py=yes --download-mpi4py=yes --with-mpi4py=yes --with-petsc4py=yes --with-debugging=1
>> make
>>
>> works without errors, so does make test.
>>
>> % echo $PYTHONPATH
>> /home/florian/software/petsc/arch-linux2-c-debug/lib
>>
>> % ls $PYTHONPATH
>> libpetsc.so libpetsc.so.3.7 libpetsc.so.3.7.5 mpi4py mpi4py-1.3.1-py3.6.egg-info petsc petsc4py
>> petsc4py-3.7.0-py3.6.egg-info pkgconfig
>>
>>
>> but:
>>
>> % python2 RBF_Load.py
>> Traceback (most recent call last):
>> File "RBF_Load.py", line 10, in <module>
>> petsc4py.init(sys.argv)
>> File "/home/florian/software/petsc/arch-linux2-c-debug/lib/petsc4py/__init__.py", line 42, in init
>> PETSc = petsc4py.lib.ImportPETSc(arch)
>> File "/home/florian/software/petsc/arch-linux2-c-debug/lib/petsc4py/lib/__init__.py", line 29, in ImportPETSc
>> return Import('petsc4py', 'PETSc', path, arch)
>> File "/home/florian/software/petsc/arch-linux2-c-debug/lib/petsc4py/lib/__init__.py", line 63, in Import
>> fo, fn, stuff = imp.find_module(name, pathlist)
>> ImportError: No module named PETSc
>>
>>
>> Anyone having an idea what could be the problem here?
>> I have also attached the configure.log
>>
>> Best,
>> Florian
>>
>
More information about the petsc-users
mailing list