winlibs / libxml2

The XML C parser and toolkit of Gnome
Other
17 stars 24 forks source link

Check builds #7

Open cmb69 opened 5 hours ago

cmb69 commented 5 hours ago
$ cd libxml2-2.11.9-vs17-x64

$ dir lib
28.10.2024  10:02           361.738 libxml2.lib
28.10.2024  10:03         9.396.198 libxml2_a.lib
28.10.2024  10:03         9.398.492 libxml2_a_dll.lib

Why are there three libs?

Jan-E commented 4 hours ago

libxml2.lib is a shared lib and needs libxml2.dll. libxml2_a.lib and libxml2_a_dll.lib are static libs. libxml2_a_dll.lib is the preferred one for PHP, but in some places there are still references to libxml2_a.lib for cases when libxml2_a_dll.lib cannot be found. For instance: https://github.com/php/php-src/blob/PHP-8.4/ext/libxml/config.w32#L6 I do not know what the exact differences between libxml2_a.lib and libxml2_a_dll.lib are.

cmb69 commented 4 hours ago

Ah, thank you @Jan-E!

In the meantime I found that libxml2_a_dll.lib provides xmlDllMain(), while libxml2_a.lib does not (with the latter, building ext/libxml apparently fails). I'll have a closer look.