On 01/05/2017 07:25 PM, Adrian Perez de Castro wrote:
Could you elaborate on what's the issue with gtk-rs? The way things work, the code from it will be statically linked into librsvg, and if librsvg uses actual {GTK+,GLib,cairo} functions, then librsvg links *dynamically* to lib{gtk+,glib,cairo} (the ones made in C) as it would do anyway before when Rust wasn't used. Only the glue bits from gtk-rs which allow to use the libraries from Rust are linked into librsvg. Honestly, I fail to see how this is a problem.
I hesitate to join the conversation because I'm uninformed. But I will! When "static linking" and GObject are used in the same sentence red flags start flying because they often do not play well together. I think the real question about whether or not static linking is okay from a correctness perspective, can be framed as: Does a static link of gtk-rs in librsvg prevent others from using gtk-rs in consuming applications because any GType (glue code!) has been registered which will conflict with an applications use of gtk-rs. This must be answered first and foremost. -- Christian
Attachment:
signature.asc
Description: OpenPGP digital signature