我已经安装了gdbm,命令“man gdbm”没问题。现在我尝试编写一个简单的gdbm程序。
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
#include <fcntl.h>
#include <string.h>
#include <gdbm.h>
#define TEST_DB_FILE "/tmp/gdbm1_test.db"
int main()
{
GDBM_FILE gdbm_ptr;
gdbm_ptr = gdbm_open(TEST_DB_FILE, 0, GDBM_WRCREAT, 0666, NULL );
if ( !gdbm_ptr )
{
fprintf(stderr, "Failed to open database\n");
exit(EXIT_FAILURE);
}
}
但是当它编译时,会发生“对'gdbm_open'的未定义引用”错误。我有包含gdbm.h,为什么会出现这样的错误?
答案 0 :(得分:2)
您需要链接libgdbm:
gcc foo.c -lgdbm