Roumen Petrov wrote: > Earnie wrote: >> Earnie wrote: >>> Roumen Petrov wrote: >>>> Earnie wrote: >>>>> Earnie wrote: >>>>>> I've been building libxml2-2.7.8 and have been having a heck of >>>>>> a time getting xmlcatalog to work with a shared DLL library. >>>>>> I've finally confirmed that the issue is caused by optimizations >>>>>> with -O2 or -O1. If I use -O0 the issue goes away. The effect is >>>>>> the xmlIsPubidChar_tab array is seen by xmlcatalog to contain all >>>>>> 0x00 values. I'm using GCC-4.6.1 and binutils-2.21.53.20110804 >>>>>> as delivered by MinGW. I wanted give this list a report of what >>>>>> I've found in the event others come by, they may have already. >>>> hmm , >>>> >>>> Look like regression as it is fine with me for gcc/binutils: - >>>> 3.4.5/2.17.50 20070129 - 4.4.0/2.19.1 >>>> >>> It was Kai Tietz who is active in GCC development for Windows and one of >>> its maintainers who pointed me to the issue resolution. >>> >>> See http://thread.gmane.org/gmane.comp.gnu.mingw.user/38000 for the >>> discussion. > [SNIP] > Above like is fine to follow the thread . > I'm not against the patch > a) it will resolve linking issue if libxml2 is build with gcc (mingw) > and -nocommon flag. > b) it will resolve issue with new gnu compiler/linker > c) libxslt and xmlsec for instance use extern for mingw* compilers > > Lets first finish discussion on mingw list as libxml and libxslt does > not use extern for cygwin compiler. If cygwin build is impacted then > complete patch must cover both woe compilers. Also another patch for > libxslt is required . >
As discussed on the MinGW list here are the patches for both libxml2 and libxslt adorning dllexport with extern for both __CYGWIN__ and __MINGW32__. During the discussion on the MinGW list we discovered the following bit of information about dllexport: From: http://msdn.microsoft.com/en-us/library/y4h7bcy6.aspx The use of dllexport implies a definition, while dllimport implies a declaration. You must use the extern keyword with dllexport to force a declaration; otherwise, a definition is implied. -- Earnie -- https://sites.google.com/site/earnieboyd/ _______________________________________________ xml mailing list, project page http://xmlsoft.org/ xml@gnome.org http://mail.gnome.org/mailman/listinfo/xml