[petsc-users] Building petsc4py / mpi4py

Florian Lindner mailinglists at xgm.de
Tue Jan 24 02:07:41 CST 2017


Am 23.01.2017 um 16:22 schrieb Satish Balay:
> 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

Oh, yeah. That works (without any additional symlinking). I was assuming it depends on python 2, since I got to use
python2 on the configure script. I actually prefer python3, so it's fine for me.

> 
> 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..

I think it's fine the way it is.

Best,
Florian

> 
> 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