C包括lib失败

时间:2016-05-21 19:36:32

标签: c gcc linker undefined-reference

我是C的新手,我想尝试this json de / serializer。由于它不需要任何依赖,我只是将代码放在我的项目的子目录中。

/
    json_test.c
    json/
        json.c
        json.h

json_test.c的来源:

#include "json/json.h"
int main() {
    JsonNode *json = json_mkobject();
}

json/json.h的一部分:

JsonNode *json_mkobject(void);

问题是我无法使用lib中的任何函数,因为编译失败(我认为它是链接器):

$ gcc json_test.c -o json_test
/tmp/cco4ZDh0.o: in function « main »:
json_test.c:(.text+0x9): undefined reference to « json_mkobject »
collect2: error: ld returned 1 exit status

我从昨天起就开始使用它,你有什么建议让它起作用吗?

1 个答案:

答案 0 :(得分:2)

你也应该编译json/json.c

gcc json/json.c json_test.c -I json -o json_test