Foo Bar Foo Bar - 4 months ago 23
Linux Question

Compiler can't find libxml/parser.h

I am on Debian 8 (Jessie), 64 Bit. I installed

libxml2-dev
, which now sits in
/usr/include/libxml2/libxml
.

But when I do (just like
libxml
docs say)

#include <libxml/parser.h>


I only get when compiling (with
gcc
)

fatal error: libxml/parser.h: no such file or directory


Notes: On another machine, with an old 64 Bit Suse, where
libxml2-dev
sits in the exact same path and no other environment vars are set compared to the new Debian, it works perfectly fine. Problem occured while migrating from one to another computer using the exact same makefiles. All other
-dev
libs that I need just worked (with their documented
#include <path>
) after the migration (they were all installed with
apt-get
), only
libxml2-dev
is not found on compilation.

Do I need to do anything else to make
libxml2-dev
visible?

Answer

Try to compile with explicite inclusion where the parser.h file is, i.e. smth like this

g++ -I/usr/include/libxml2/


Following environment variables can also be used for lookup of header files

CPATH
C_INCLUDE_PATH
CPLUS_INCLUDE_PATH
OBJC_INCLUDE_PATH

Find more information here

Comments