[devel] Fwd: [#72971] FAILED libnetcdf.git=mpi-4.1.3-alt5

Vitaly Kuznetsov vitty на altlinux.ru
Ср Июн 13 12:34:19 MSK 2012


On Wed, 13 Jun 2012 15:06:05 +0700, REAL wrote:
> 13.06.2012 15:07, Vitaly Kuznetsov пишет:
>> Собственно, в настоящий момент в Сизифе %ghost в /lib64 и /usr/lib64
>> имеется в следующих пакетах:
>> libhdf5-7-mpi-1.8.8-alt1.x86_64.rpm:/usr/lib64/libhdf5.so.7
>> libhdf5-7-mpi-1.8.8-alt1.x86_64.rpm:/usr/lib64/libhdf5.so.7.0.2
>> libhdf5-7-mpi-1.8.8-alt1.x86_64.rpm:/usr/lib64/libhdf5_fortran.so.7
>> 
>> libhdf5-7-mpi-1.8.8-alt1.x86_64.rpm:/usr/lib64/libhdf5_fortran.so.7.0.2
>> libhdf5-7-mpi-1.8.8-alt1.x86_64.rpm:/usr/lib64/libhdf5_hl.so.7
>> libhdf5-7-mpi-1.8.8-alt1.x86_64.rpm:/usr/lib64/libhdf5_hl.so.7.0.2
>> 
>> libhdf5-7-mpi-1.8.8-alt1.x86_64.rpm:/usr/lib64/libhdf5hl_fortran.so.7
>> 
>> libhdf5-7-mpi-1.8.8-alt1.x86_64.rpm:/usr/lib64/libhdf5hl_fortran.so.7.0.2
>> libnetcdf7-mpi-4.1.3-alt4.x86_64.rpm:/usr/lib64/libnetcdf.so.7
>> libnetcdf7-mpi-4.1.3-alt4.x86_64.rpm:/usr/lib64/libnetcdf.so.7.1.1
>> libnetcdf7-mpi-4.1.3-alt4.x86_64.rpm:/usr/lib64/libudunits2.so.0
>> libnetcdf7-mpi-4.1.3-alt4.x86_64.rpm:/usr/lib64/libudunits2.so.0.0.0
>>
>> Быть может, что таки стоит перестать делать
>> %ghost на библиотеки. Поправить придётся всего 2 пакета.
>
> Не стоит.
> http://lists.altlinux.org/pipermail/devel/2010-October/185868.html

Там же выше по треду: 
http://lists.altlinux.org/pipermail/devel/2010-October/185865.html

"Механизм альтернатив не вполне применим к разделяемым библиотекам.
Если две реализации одного soname отличаются по списку экспортируемых
символов, то клиент этой библиотеки, будучи слинкованным с одной
реализацией, может даже не запускаться с другой.  Механизм альтернатив
обманет не ld.so, а пользователя, у которого может оказаться нерабочий
клиент с удовлетворенными зависимостями, т.е. то самое, с чем мы 
боремся
с помощью set-versioned dependencies.  Так что лучше сделать
альтернативные разделяемые библиотеки конфликтующими."

Хотелось бы понять, почему нельзя сделать одно из двух:
1) Разная реализация одного и того же в конфликтующих пакетах
2) Разная реализация разного в библиотеках с разными именами.





Подробная информация о списке рассылки Devel