Packaging question on MPI requires

Sandro Mani manisandro at gmail.com
Thu Oct 22 15:27:12 UTC 2015



On 22.10.2015 16:54, Sandro Mani wrote:
>
>
> On 22.10.2015 16:49, Ankur Sinha wrote:
>> Hiya,
>>
>> I recently packaged up nest[0] which is widely used in the
>> computational neuroscience research community. The review ticket is
>> here[1], and the copr builds are here[2]. Even though the rpm builds
>> perfectly, dnf won't install them from the copr. This is what I get:
>>
>>
>>> [asinha at cs-as14aho-2-herts-ac-uk  ~]$ rpm -q --provides mpich
>>> libmpi.so.12()(64bit)(mpich-x86_64)
>>> libmpicxx.so.12()(64bit)(mpich-x86_64)
>>> libmpifort.so.12()(64bit)(mpich-x86_64)
>>> mpi
>>> mpich = 3.1.4-5.fc23
>>> mpich(x86-64) = 3.1.4-5.fc23
>>> mpich2 = 3.0.1
>>> [asinha at cs-as14aho-2-herts-ac-uk  ~]$ sudo dnf install nest-mpich 
>>> pynest -y
>>> Error: nothing provides libmpi.so.12()(64bit) needed by 
>>> pynest-2.8.0-1.gitdc21fdc.fc23.x86_64.
>>> nothing provides libmpi.so.12()(64bit) needed by 
>>> nest-mpich-2.8.0-1.gitdc21fdc.fc23.x86_64
>>> (try to add '--allowerasing' to command line to replace conflicting 
>>> packages)
>>> [asinha at cs-as14aho-2-herts-ac-uk  ~]$
>> Would someone know what I'm doing wrong here? :/
> For some reason the mpi dependency generators (in rpm-mpi-hooks) are 
> failing to generate the correct libmpi requires. I'll look into it.
So the package is installing pynestkernel.so in 
/usr/lib64/python2.7/site-packages/nest/pynestkernel.so. However, the 
dependency generator expects MPI-enabled binaries to be in one of 
several known MPI directories, which are

$MPI_HOME = %{_libdir}/$MPI_NAME
$MPI_FORTRAN_MOD_DIR = %{_libdir}/gfortran/modules/$MPI_NAME
$MPI_PYTHON_SITEARCH = %{python2_sitearch}/$MPI_NAME
$MPI_PYTHON3_SITEARCH = %{python3_sitearch}/$MPI_NAME

where $MPI_NAME is openmpi or mpich.

So you should install the mpi-enabled pynest in the appropriate 
$MPI_PYTHON_SITEARCH directory.


More information about the devel mailing list