Ça dépend du contexte.
Sous Windows/macOS, la plupart utilisent les framework systèmes, qui sont compatible binaire dans toutes les directions, et ça just marche.
Ceux qui font du cross plateform avec qt ou quoi ou qu’est-ce vont de toutes façons devoir embarquer leur dépendance et les déposer quelque part a eux sur le système (sous macOS, typiquement dans l’app bundle, donc privé à l’appli, je sais pas trop où en sont les choses sous Windows de nos jours).
Sur ces plateformes, ça va, ça se gère sans trop de migraines. Mais après t’as Linux.
Sous Linux, dépendre de gtk/qt/whatever ça devient plus compliqué. C’est une jungle de différentes versions, de différentes options de compilation, compilateur, en veut tu en voila.
Si t’arrives a être intégré upstream, ça aide, mais après tu te tapes des patches qui te plaisent pas forcemment, tu contrôles pas quelle version est distribué, ce genre de choses qui peuvent être un gros problème en fonction du projet.
Si t’es pas upstream, bon courage. Ça va être la foire à « Debian machin a gtk 42.31, mais on a linké a la version 43.21 et des choses bizarres se passent ».
Et du coup, l’intérêt du link statique de go devient beaucoup plus apparent.
[^] # Re: Go with C
Posté par groumly . En réponse au journal Interface graphique en Go!. Évalué à 2.
Ça dépend du contexte.
Sous Windows/macOS, la plupart utilisent les framework systèmes, qui sont compatible binaire dans toutes les directions, et ça just marche.
Ceux qui font du cross plateform avec qt ou quoi ou qu’est-ce vont de toutes façons devoir embarquer leur dépendance et les déposer quelque part a eux sur le système (sous macOS, typiquement dans l’app bundle, donc privé à l’appli, je sais pas trop où en sont les choses sous Windows de nos jours).
Sur ces plateformes, ça va, ça se gère sans trop de migraines. Mais après t’as Linux.
Sous Linux, dépendre de gtk/qt/whatever ça devient plus compliqué. C’est une jungle de différentes versions, de différentes options de compilation, compilateur, en veut tu en voila.
Si t’arrives a être intégré upstream, ça aide, mais après tu te tapes des patches qui te plaisent pas forcemment, tu contrôles pas quelle version est distribué, ce genre de choses qui peuvent être un gros problème en fonction du projet.
Si t’es pas upstream, bon courage. Ça va être la foire à « Debian machin a gtk 42.31, mais on a linké a la version 43.21 et des choses bizarres se passent ».
Et du coup, l’intérêt du link statique de go devient beaucoup plus apparent.