использование berkeleydb в Ubuntu - библиотека db не найдена - PullRequest
1 голос
/ 16 марта 2012

Я пытаюсь скомпилировать программу c, используя библиотеку berkeley db (libdb) в ubuntu, но программа не связывается - gcc сообщает об отсутствующей ссылке dbopen.

db_ops.c :(. Text + 0x5c): неопределенная ссылка на `dbopen ' collect2: ld вернул 1 статус выхода make: * [cdrutil] Ошибка 1

Это сводит меня с ума, потому что похоже, что библиотека db v4.8 установлена ​​(но я не знаю, где благодаря блестящему управлению пакетами в Ubuntu)

Эти пакеты перечислены с apt-cache showpkg:

  • libdb4.8-DEV
  • libdb4o8.0-CIL
  • libdb4.8

и моя командная строка компилятора:

gcc -D_FILE_OFFSET_BITS = 64 -ldb -o cdrutil main.c cdr_ops.c db_ops.c

(я пробовал также -ldb4.8, -ldb-4.8 и несколько других, но безуспешно)

ПОМОГИТЕ людям - как установить эту убогую библиотеку в Ubuntu? И почему это не работает из коробки, это какая-то ракетостроение или что?

1 Ответ

0 голосов
/ 18 марта 2012

Хорошо, я нашел ответ: функция dbopen поддерживалась в старых версиях Berkeley db. Теперь вы должны использовать DB-> open. В этом отношении справочные страницы Ubuntu устарели.

...