nixp.ru v3.0

23 мая 2017,
вторник,
23:50:15 MSK

DevOps с компанией «Флант»
Vika написала 14 ноября 2004 года в 06:17 (668 просмотров) Ведет себя как женщина; открыла 7 тем в форуме, оставила 34 комментария на сайте.

Есть некий пакет программ на С. Он использует библиотеки для решения оптимизационных задач, тоже написанные на С.

На компе с Дебианом пакет собрался без всяких проблем. А у меня на Слаке не хочет, не может найти библиотеки, хотя я и отредактировала makefile и указала путь к этим библиотекам.

В чём здесь может быть проблема? Почему при одной и той же последовательности действий этот пакет собирается под Дебианом и не собирается под Слакой?

Octane

а точно библиотеки присутствуют? может где-нить используются битые символьные ссылки или ещё что-нибудь ..

Vika

Библиотеки точно на месте. Я их сама устанавливала, компилировала (configure, make, make clean, как и было написано в README файле библиотек), потом адрес библиотек прописывала в makefile пакета, пыталась скомпилировать пакет и получала ошибку: пакет не находил функции, описанные в библиотеке. При абсолютно такой же последовательности действий в Дебиане всё устанавливалось без всяких проблем, а в Слаке не получается. Почему? Чем отличается Дебиан от Слаки?

Genie
Чем отличается Дебиан от Слаки?


Направленностью использования.

Дебиан ставится теми людьми и туда, где надо, чтобы работало.

А Слака — теми и туда, чтобы поиграться в конструктор, поизучать систему,… в собственное удовольствие.

отсюда и разница.

ну и, кроме того, не надо забывать, что расположение файлов в системе — разное. разные версии программ (пакетов)…

что конкретно не так — смотри лог ./configure и что пищит make.

ищи несоответствия. где-то, видимо, что-то не так/не там.

Vika

Я, кажется нашла в чём проблема, но не знаю как исправить.

При компиляции библиотеки создаётся *.a файл, а нужна shared object library, *.so, поэтому при компиляции пакета библиотека не обнаруживается. Как сделать из *.а библиотеки *.so?

Genie

т.е. получается, что у тебя собрались только devel-библиотеки?

или всё же и .so, только лежат они не там, где надо?

посмотри, куда указывает путь до места обитания .so в make install

может они-таки собрались, но лежат теперь не там, где надо.

Vika
Genie
т.е. получается, что у тебя собрались только devel-библиотеки?

Да, только они. .so отсутствует.