未定义函数引用 - 但包含头

时间:2017-12-20 17:36:40

标签: c libxml2

好的偷看。我在这里努力学习基础知识。

文件结构是:

./Makefile
./main.c
./libxml2-2.0.0/parser.c
./libxml2-2.0.0/parser.h

./ libxml2-2.0.0 / parser.h:

...
xmlDocPtr   xmlParseDoc     (xmlChar *cur);
...

./ libxml2-2.0.0 / parser.c:

...
xmlDocPtr
xmlParseDoc(xmlChar *cur) {
    return(xmlSAXParseDoc(NULL, cur, 0));
}
...

我的部分代码是:

main.c中:

#include <curl/curl.h>
#include <parser.h>
#include <tree.h>

struct string {
  char *ptr;
  size_t len;
};
void extractXML(struct string *s)
{
    xmlDocPtr doc;
    doc = xmlParseDoc( (xmlChar *) s->ptr);
}
int main(void){..}

生成文件:

CC=gcc
LIBS = -lcurl
MyProgram: main.c
    $(CC) $?  $(LIBS) -Ilibxml2-2.0.0 -o $@

ERROR:

In function `extractXML':
main.c:(.text+0xbf): undefined reference to `xmlParseDoc'

因此包含了库,其他libxml和parser.h元素正在使用,但xmlParseDoc我无法使用。怎么解决?

0 个答案:

没有答案