我正在尝试使用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一起列出:
我的编译器命令行是:
gcc -D_FILE_OFFSET_BITS = 64 -ldb -o cdrutil main.c cdr_ops.c db_ops.c
(我也试过-ldb4.8,-ldb-4.8和其他一些但没有成功)
帮助我的人 - 如何在ubuntu中安装那个怪异的库?为什么它没有开箱即用,这是一些火箭科学还是什么?
答案 0 :(得分:0)
好的,我找到了答案:旧版本的Berkeley db支持dbopen功能。现在你应该使用DB-> open。 Ubuntu手册页在这方面已经过时了。