在ubuntu上使用berkeleydb - 找不到db库

时间:2012-03-16 14:48:56

标签: c linux gcc ubuntu berkeley-db

我正在尝试使用ubuntu上的berkeley db库(libdb)编译一个c程序,但该程序没有链接 - gcc报告缺少dbopen引用。

  

db_ops.c :(。text + 0x5c):对'dbopen'的未定义引用   collect2:ld返回1退出状态   make: * [cdrutil]错误1

这让我抓狂,因为它看起来已经安装了db library 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 :(得分:0)

好的,我找到了答案:旧版本的Berkeley db支持dbopen功能。现在你应该使用DB-> open。 Ubuntu手册页在这方面已经过时了。