2

我已经安装了 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,为什么会出现这样的错误?

4

1 回答 1

2

您需要与 libgdbm 链接:

gcc foo.c -lgdbm

于 2013-06-30T22:26:08.250 回答