问题描述:在编写ndbm接口函数时,找不到相应的头文件,用ls命令查看,/usr/include中也没有想对应的头文件,无论是#include <ndbm.h>或#include <gdbm-ndbm.h>,都无法找到。
解决方法:安装gdbm,因为在/usr/include中,没有关于dbm的任何头文件,所以是没有安装的原因:
用以下命令安装:
sudo apt-get install libgdbm-dev
完成之后,在/usr/include文件中出现想对应的头文件。再次编译,取得成功。
在源文件中用头文件 #include <gdbm-ndbm.h>
Ubuntu中默认安装的是gdbm数据库,应该使用gdbm实现来访问数据库。若还是需要以dbm若ndbm方式来访问数据库的话就需要使用gdbm-ndbm.h头文件,编译链接时应使用-lgdbm_compat链接选项
例如:gcc -o dbm1 -I /usr/include/gdbm dbm1.c -lgdbm_compat -lgdbm
更多Ubuntu相关信息见Ubuntu 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=2