Создание и установка пакета rpm - PullRequest
0 голосов
/ 10 января 2012

Я использую CentOS 5. Я создал файл спецификации rpm для модуля. Он зависит от времени компиляции общей библиотеки, если быть точным, libavro. Для этого я скачал, собрал и установил libavro-1.5.1.so.21. Он был установлен в / usr / local / lib по умолчанию. Я также отредактировал ld.so.conf, чтобы включить / usr / local / lib. Я выполнил ldconfig для восстановления кеша ld. После вышеописанных шагов я сгенерировал rpm для моего модуля. Когда я пытаюсь установить rpm на тот же компьютер, на котором я его построил, я получаю ошибку зависимости: mymodule-1.1-1.x86

необходим libavro-1.5.4.so.22 () (64 бита)

Я не понимаю, почему он должен потерпеть неудачу в общей библиотеке, с которой он связан при сборке.

Ответы [ 2 ]

1 голос
/ 12 января 2012

Одной общей библиотеки недостаточно: вам нужны также заголовки и ссылка .so, чтобы иметь возможность ссылаться на нее.

Попробуйте найти пакет -devel вместе спакет библиотеки и установить его.Добавьте пакет devel как BuildRequires в свой файл спецификаций.

О, и НЕ создавайте свои RPM как root - вы этого не делаете, не так ли?

1 голос
/ 11 января 2012

Попробуйте вместо этого установить libavro-1.5.4.rpm ищет логическое имя (soname) необходимых библиотек, поэтому установка не удалась.

...