sdpb
sdpb copied to clipboard
Possible waf configuration issues with libxm2
libxml2
has directory structure include/libxml2/libxml/*.h
. Include statements in Vector_State.hxx
and Number_State.hxx
ask for #include <libxml2/libxml/parser.h>
. At configuration time, waf configure
tries to compile a trivial file with the include #include <libxml/parser.h>
using the user-supplied include path for libxml2
.
This means that providing the include path .../include/
fails the waf
configuration step. Then waf
resorts to asking pkg-config
for libxml2
paths, which on my system gives ../include/libxml2
for the include path. This does not seem to be verified by compiling a trivial source.
The result of this is that compilation of files which include Vector_State.hxx
and Number_State.hxx
fails. A workaround is to run ./waf configure --libxml2-incdir=".../include/ .../include/libxml2/"
which makes the configuration tool happy with its include of <libxml/parser.h>
but also makes <libxml2/libxml/parser.h>
work.
I am not sure what is the proper solution of this. Changing the configuration script to use <libxml2/libxml/parser.h>
doesn't help -- parser.h
uses <libxml/...>
under the hood (or so it seemed). Perhaps the files Vector_State.hxx
and Number_State.hxx
should be changed. But it seems that the issue doesn't arise for other users.
In any case there seems to be a clear discrepancy between the configuration script and the actual reference to the library which should be fixed.