Vika
написала 14 ноября 2004 года в 06:17 (1247 просмотров)
Ведет себя
как женщина; открыла 7 тем в форуме, оставила 34 комментария на сайте.
Есть некий пакет программ на С. Он использует библиотеки для решения оптимизационных задач, тоже написанные на С.
На компе с Дебианом пакет собрался без всяких проблем. А у меня на Слаке не хочет, не может найти библиотеки, хотя я и отредактировала makefile и указала путь к этим библиотекам.
В чём здесь может быть проблема? Почему при одной и той же последовательности действий этот пакет собирается под Дебианом и не собирается под Слакой?
Последние комментарии
- OlegL, 17 декабря в 15:00 → Перекличка 21
- REDkiy, 8 июня 2023 года в 9:09 → Как «замокать» файл для юниттеста в Python? 2
- fhunter, 29 ноября 2022 года в 2:09 → Проблема с NO_PUBKEY: как получить GPG-ключ и добавить его в базу apt? 6
- Иванн, 9 апреля 2022 года в 8:31 → Ассоциация РАСПО провела первое учредительное собрание 1
- Kiri11.ADV1, 7 марта 2021 года в 12:01 → Логи catalina.out в TomCat 9 в формате JSON 1
ecobeing.ru
Экология и вегетарианство на благо всем живым существам Планеты.
а точно библиотеки присутствуют? может где-нить используются битые символьные ссылки или ещё что-нибудь ..
Библиотеки точно на месте. Я их сама устанавливала, компилировала (configure, make, make clean, как и было написано в README файле библиотек), потом адрес библиотек прописывала в makefile пакета, пыталась скомпилировать пакет и получала ошибку: пакет не находил функции, описанные в библиотеке. При абсолютно такой же последовательности действий в Дебиане всё устанавливалось без всяких проблем, а в Слаке не получается. Почему? Чем отличается Дебиан от Слаки?
Направленностью использования.
Дебиан ставится теми людьми и туда, где надо, чтобы работало.
А Слака — теми и туда, чтобы поиграться в конструктор, поизучать систему,… в собственное удовольствие.
отсюда и разница.
ну и, кроме того, не надо забывать, что расположение файлов в системе — разное. разные версии программ (пакетов)…
что конкретно не так — смотри лог ./configure и что пищит make.
ищи несоответствия. где-то, видимо, что-то не так/не там.
Я, кажется нашла в чём проблема, но не знаю как исправить.
При компиляции библиотеки создаётся *.a файл, а нужна shared object library, *.so, поэтому при компиляции пакета библиотека не обнаруживается. Как сделать из *.а библиотеки *.so?
т.е. получается, что у тебя собрались только devel-библиотеки?
или всё же и .so, только лежат они не там, где надо?
посмотри, куда указывает путь до места обитания .so в make install
может они-таки собрались, но лежат теперь не там, где надо.
Да, только они. .so отсутствует.