Как установить разделяемую библиотеку в Ubuntu Linux? - PullRequest
4 голосов
/ 30 августа 2011

У меня проблемы с общими библиотеками на моей Ubuntu 10.04.За последние месяцы я испытал его несколько раз, много читал об установке libs, но, похоже, я упустил это.

Начиная с каталога с исходным кодом, я запускаю следующие команды:

  1. make
    Работает чисто, без ошибок
  2. sudo make install
    Кажется, что работает нормально, заканчивается: cp foo.so.0.1 / usr /local / lib /
    rm -f /usr/local/lib/foo.so
    ln -s /usr/local/lib/foo.so.0.1 /usr/local/lib/foo.so
  3. sudo ldconfig
    Запускается без вывода

При записи файла сборки я не могу адресовать библиотеку по ее имени, но по пути:
Не работает: -lfoo
Работает: -L/usr/local/lib/foo.so

Проблема остается той же, независимо от того, какую библиотеку я пытаюсь установить.

Чего мне здесь не хватает?Или что я могу сделать, чтобы узнать?

Ответы [ 2 ]

1 голос
/ 30 августа 2011

Находится ли /usr/local/lib/ в пути поиска вашей библиотеки?Если нет, вам нужно будет указать и -lfoo, и /usr/local/lib/ в вашем Makefile, чтобы компоновщик знал, где искать.

Наличие или отсутствие /usr/local/lib/ в пути поиска библиотеки зависит от вашего дистрибутива..

0 голосов
/ 19 августа 2018

Помните, что имена библиотек должны начинаться с lib и заканчиваться .so. Возможно, вам не хватает стартового lib

...