Понятно, круговая порука и rpm hell :)
В общем, в дистрибутивах линукс, основанных на пакетах, лучше всего собирать и устанавливать пакеты а не собирать из исходников. Иначе разрушаются цепочки зависимостей, и получаем то, что выше. Если начать собирать из исходников библиотеки, то потом придётся собирать из исходников все зависящие от них пакеты - openssh, mozilla итд.
В принципе, обычно это несложно - я так всегда делаю :-) Надо всего лишь взять исходный пакет старой версии, заменить .tar.gz на новую версию, в .spec файле исправить новую версию и собрать бинарный пакет.
Если у Вас OpenSuSE 11.2, то исходные пакеты opensc и openct берёте, например, тут. Далее распаковываете их:
После этого идёте в каталог, куда распаковываются src.rpm в Вашей системе (что-то типа /usr/src/suse/). В подкаталоге SOURCES лежат .tar.gz и парочка дополнительных файлов. Кладёте туда же .tar.gz новых версий.
После этого идёте в каталог SPECS и видите файлы openct.spec и opensc.spec. Это инструкция (скрипт) для автоматической сборки бинарных пакетов. Открываете их в любом текстовом редакторе, и заменяете номер версии (в строке Version:) на номер версии нового .tar.gz. Также сбросьте Release: в "1".
Теперь пробуете собрать бинарные пакеты (для этого Вы должны установить пакет rpmbuild):
В процессе сборки он может Вам сообщить, что для сборки чего-то не хватает, например, какого-нибудь libassuan-devel. Устанавливаете необходимые пакеты и снова запускаете openct на сборку. После успешной сборки в каталоге RPMS/x86_64 появятся бинарные rpm'ки. Устанавливаете необходимые пакеты (rpm -Uvh libopenct1* openct* openct-devel*). Теперь аналогично собираете и устанавливаете opensc.
Если всё получится, Вы можете собрать свои собственные .src.rpm командой:
и положить их куда-нибудь в общий доступ ;-) Надеюсь, у Вас всё получится :-)