Replies: 5 comments 1 reply
-
Is there any issue with those mingw packages? |
Beta Was this translation helpful? Give feedback.
-
if linking with static libgcc 32 bit gdk-pixbuf2 fails to load several plugins so yeah. |
Beta Was this translation helpful? Give feedback.
-
even if they are not it is still a bug :) since it does not use the DllMain wrapper in gdk-pixbuf2 even in a normal build, it uses the DllMain from whatever library happens to have one and this gets visible when linked to the static runtime. (no it is not linked statically only libgcc is). i found the bug in the most recent graphviz version 10.0.0.1 the groff tables are created like this -> |
Beta Was this translation helpful? Give feedback.
-
same in version 11.0.0 of graphviz so still needs the '-t' im afraid. |
Beta Was this translation helpful? Give feedback.
-
loaders.zip |
Beta Was this translation helpful? Give feedback.
-
Finally nailed why gdk-pixbuf2 fails to load plugins when linked to the static runtimes.
The gobject loader looks for a dllmain in the plugin but several plugins do not have one when linked with the static runtimes -> eg. -static-libgcc etc. this is due to many of the image libraries like tiff not having one as well so gdk-pixbuf2 tries to fool these by wrapping a DllMain on top of the libraries main function. for some reason which is not clear to me this works for 64 bit builds and not 32 bit.
so i did some work on the DllMain patch adding an entrypoint to DllMain and also duplicating the mechanism in the query loaders executable. it has worked beautifully since so i would highly recommend using the updated patch.
0003-fix-dllmain.zip
it can be dropped in as a replacement for the old patch just remember to update the pkgsums.
the graphviz fix was due to updated groff no longer defaulting to "-t" or array anymore so it fails to build the pdf documentation.
0007-fix-groff-tables.zip
this should fix it.
Beta Was this translation helpful? Give feedback.
All reactions