Backend Compile Error
When compiling the backends, I get an error:
`make[2]: Entering directory '/home/farside268/backends/backend'
/bin/bash ../libtool --silent --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I../include/sane -D_REENTRANT -DPATH_SANE_CONFIG_DIR=/etc/sane.d -DPATH_SANE_DATA_DIR=/usr/share -DPATH_SANE_LOCK_DIR=/var/lock/sane -DV_MAJOR=1 -DV_MINOR=0 -I. -I. -I../include -I../include -DLIBDIR="\"/usr/lib/x86_64-linux-gnu/sane\"" -DBACKEND_NAME=pixma -Wall -Wextra -pedantic -g -O2 -MT pixma/libpixma_la-pixma_common.lo -MD -MP -MF pixma/.deps/libpixma_la-pixma_common.Tpo -c -o pixma/libpixma_la-pixma_common.lo `test -f 'pixma/pixma_common.c' || echo './'`pixma/pixma_common.c
pixma/pixma_common.c:60:3: error: #error "The pixma backend requires libxml2"
60 | # error "The pixma backend requires libxml2"
| ^~~~~
pixma/pixma_common.c: In function ‘pixma_parse_xml_response’:
pixma/pixma_common.c:1266:3: error: unknown type name ‘xmlDoc’
1266 | xmlDoc *doc = NULL;
| ^~~~~~
pixma/pixma_common.c:1267:3: error: unknown type name ‘xmlNode’
1267 | xmlNode *node = NULL;
| ^~~~~~~
pixma/pixma_common.c:1268:3: error: unknown type name ‘xmlChar’
1268 | xmlChar *content = NULL;
| ^~~~~~~
pixma/pixma_common.c:1270:9: warning: implicit declaration of function ‘xmlReadMemory’ [-Wimplicit-function-declaration]
1270 | doc = xmlReadMemory(xml_message, strlen(xml_message), "mem:device-resp.xml", NULL, 0);
| ^~~~~~~~~~~~~
pixma/pixma_common.c:1270:7: warning: assignment to ‘int *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
1270 | doc = xmlReadMemory(xml_message, strlen(xml_message), "mem:device-resp.xml", NULL, 0);
| ^
pixma/pixma_common.c:1277:10: warning: implicit declaration of function ‘xmlDocGetRootElement’ [-Wimplicit-function-declaration]
1277 | node = xmlDocGetRootElement(doc);
| ^~~~~~~~~~~~~~~~~~~~
pixma/pixma_common.c:1277:8: warning: assignment to ‘int *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
1277 | node = xmlDocGetRootElement(doc);
| ^
pixma/pixma_common.c:1284:27: error: request for member ‘next’ in something not a structure or union
1284 | for (; node; node = node->next) {
| ^~
pixma/pixma_common.c:1285:33: error: request for member ‘name’ in something not a structure or union
1285 | if (strcmp((const char*)node->name, "cmd") == 0)
| ^~
pixma/pixma_common.c:1294:19: error: request for member ‘children’ in something not a structure or union
1294 | for (node = node->children; node; node = node->next) {
| ^~
pixma/pixma_common.c:1294:48: error: request for member ‘next’ in something not a structure or union
1294 | for (node = node->children; node; node = node->next) {
| ^~
pixma/pixma_common.c:1295:33: error: request for member ‘name’ in something not a structure or union
1295 | if (strcmp((const char*)node->name, "contents") == 0)
| ^~
pixma/pixma_common.c:1304:19: error: request for member ‘children’ in something not a structure or union
1304 | for (node = node->children; node; node = node->next) {
| ^~
pixma/pixma_common.c:1304:48: error: request for member ‘next’ in something not a structure or union
1304 | for (node = node->children; node; node = node->next) {
| ^~
pixma/pixma_common.c:1305:33: error: request for member ‘name’ in something not a structure or union
1305 | if (strcmp((const char*)node->name, "param_set") == 0)
| ^~
pixma/pixma_common.c:1314:19: error: request for member ‘children’ in something not a structure or union
1314 | for (node = node->children; node; node = node->next)
| ^~
pixma/pixma_common.c:1314:48: error: request for member ‘next’ in something not a structure or union
1314 | for (node = node->children; node; node = node->next)
| ^~
pixma/pixma_common.c:1316:33: error: request for member ‘name’ in something not a structure or union
1316 | if (strcmp((const char*)node->name, "response") == 0) {
| ^~
pixma/pixma_common.c:1317:17: warning: implicit declaration of function ‘xmlNodeGetContent’ [-Wimplicit-function-declaration]
1317 | content = xmlNodeGetContent(node);
| ^~~~~~~~~~~~~~~~~
pixma/pixma_common.c:1317:15: warning: assignment to ‘int *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
1317 | content = xmlNodeGetContent(node);
| ^
pixma/pixma_common.c:1322:7: warning: implicit declaration of function ‘xmlFree’ [-Wimplicit-function-declaration]
1322 | xmlFree(content);
| ^~~~~~~
pixma/pixma_common.c:1323:40: error: request for member ‘name’ in something not a structure or union
1323 | } else if (strcmp((const char*)node->name, "response_detail") == 0) {
| ^~
pixma/pixma_common.c:1324:15: warning: assignment to ‘int *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
1324 | content = xmlNodeGetContent(node);
| ^
pixma/pixma_common.c:1334:3: warning: implicit declaration of function ‘xmlFreeDoc’ [-Wimplicit-function-declaration]
1334 | xmlFreeDoc(doc);
| ^~~~~~~~~~
make[2]: *** [Makefile:5238: pixma/libpixma_la-pixma_common.lo] Error 1
make[2]: Leaving directory '/home/farside268/backends/backend'
make[1]: *** [Makefile:3327: all] Error 2
make[1]: Leaving directory '/home/farside268/backends/backend'
make: *** [Makefile:591: all-recursive] Error 1
`
Any ideas?
Edited by Ralph Little