2012-07-03 7 views
2

gdbm을 설치했습니다. "man gdbm"명령이 정상입니다. 이제 간단한 gdbm 프로그램을 작성하려고합니다.'gdbm_open'에 대한 정의되지 않은 참조

#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를 포함 시켰습니다. 그런 오류가 발생하는 이유는 무엇입니까?

답변

2

은 당신의 libgdbm와 연결해야합니다

GCC의 foo.c를 -lgdbm