好的偷看。我在这里努力学习基础知识。
文件结构是:
./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
我无法使用。怎么解决?