indexdata/yaz

build error for yaz 5.34.0 with libxml2 2.13.0

mtasaka opened this issue · 7 comments

With libxml2 2.12.0, yaz 5.34.0 fails to build as:

record_render.c:231:9: error: implicit declaration of function 'xmlKeepBlanksDefault' [-Werror=implicit-function-declaration]
record_render.c:232:15: error: implicit declaration of function 'xmlParseMemory' [-Werror=implicit-function-declaration]
yaz-icu.c:437:19: error: implicit declaration of function 'xmlParseFile'; did you mean 'xmlSaveFile'? [-Werror=implicit-function-declaration]
yaz-record-conv.c:44:33: error: implicit declaration of function 'xmlParseFile'; did you mean 'xmlSaveFile'? [-Werror=implicit-function-declaration]
cclsh.c:70:19: error: implicit declaration of function 'xmlParseFile'; did you mean 'xmlSaveFile'? [-Werror=implicit-function-declaration]
test_ccl.c:201:19: error: implicit declaration of function 'xmlParseMemory' [-Werror=implicit-function-declaration]
test_icu.c:452:19: error: implicit declaration of function 'xmlParseMemory' [-Werror=implicit-function-declaration]
test_xml_include.c:27:11: error: implicit declaration of function 'xmlParseMemory' [-Werror=implicit-function-declaration]
client.c:902:9: error: implicit declaration of function 'xmlKeepBlanksDefault' [-Werror=implicit-function-declaration]
client.c:903:15: error: implicit declaration of function 'xmlParseMemory' [-Werror=implicit-function-declaration]

getenv issue is another one (#104)

I can't reproduce this problem on macOS Sonoma 14.5 with libxml2 2.12.7 (brew) -- yaz compiles fine after applying 3c61afc, changes in #104 are not needed. Could this be a linux/glibc thing?

See https://gitlab.gnome.org/GNOME/libxml2/-/issues/642

With https://gitlab.gnome.org/GNOME/libxml2/-/commit/72007096e2812f80c9bce2485d85e6d13bb7dbb5 libxml2 header change is reverted on 2.12.x branch , but not on 2.13.x branch , so the error is not seen with 2.12.3 and above 2.12.x branch , but can be seen on 2.13.x branch (and will see on future 2.14.0) .

@mtasaka thanks, that explains it. I'll wait for 2.13 to be available in brew and test this.

@mtasaka I don't see 2.13 branch in the libxml2 repo

Current master branch is 2.13.x branch which will be 2.14.0.

@mtasaka looks like 2.13 is broken by mistake and it will be fixed in 2.13.1 onward: https://gitlab.gnome.org/GNOME/libxml2/-/issues/734