Depuis 2016, Microsoft développe vcpkg, un outil bien sympathique qui permet de télécharger et compiler un ensemble de bibliothèques et leurs dépendances. Jusqu’à présent, cet outil était disponible uniquement pour la plate‐forme Windows. Depuis le 24 avril 2018, cet outil prend également en charge les plates‐formes GNU/Linux et macOS. vcpkg est publié sous licence MIT.
Une limite cependant est que la compilation des bibliothèques sur GNU/Linux est uniquement statique. La raison invoquée est qu’il est plus compliqué d’utiliser des bibliothèques sur GNU/Linux (LD_LIBRARY_PATH
, rpath, etc.) que sous Windows, où l’on peut tout mettre dans un seul répertoire.
Quoi qu’il en soit, c’est une bonne nouvelle. Même si les paquets des distributions resteront une source privilégiée pour obtenir les fichiers de développement d’une bibliothèque, vcpkg offre une alternative intéressante pour ceux qui voudraient tout construire en statique de manière à fournir un seul binaire pour toutes les variantes de GNU/Linux.
Aller plus loin
- Announcing a single C++ library manager for GNU/Linux, macOS and Windows: Vcpkg (221 clics)
- vcpkg sur GitHub (287 clics)
# Mwarf
Posté par gnumdk (site web personnel) . Évalué à 4.
Avec Snap et Flatpak, je vois pas bien l’intérêt…
[^] # Re: Mwarf
Posté par Thomas Debesse (site web personnel) . Évalué à 4.
et AppImage…
ce commentaire est sous licence cc by 4 et précédentes
[^] # Re: Mwarf
Posté par Oliver (site web personnel) . Évalué à 3.
Le langage Go est conçu pour générer un binaire statique qui ne dépend d'aucune libraire, même pas de la glibc.
Je pense que Vcpkg a un objectif similaire pour la plateforme Linux.
Cela permet d'exécuter le même binaire sur différentes distributions GNU/Linux sans se soucier des dépendances. Et c'est encore plus facile d'intégrer l'application dans un conteneur (Docker, Flatpak, AppImage, Snap…).
Commentaire sous licence Creative Commons Zero CC0 1.0 Universal (Public Domain Dedication)
[^] # Re: Mwarf
Posté par Thomas Debesse (site web personnel) . Évalué à 5.
Il faudrait réveiller FatELF qui s’était pris une volée de bois vert par des aigris qui lui reprochaient de ne pas faire ce à quoi ça ne servait pas (par exemple de ne pas résoudre le problème du développeur qui veut cross-compiler).
Une appimage statique multiarchitecture ça peut être cool, et aujourd’hui pas à cause du 32/63bit, mais du multiarchitecture amd64/arm et autres.
J’ai cité AppImage pour “en rajouter” mais il y a un réel besoin pour FlatPak et AppImage, AppImage est très pratique pour une Application complètement autonome, une application graphique qui ne se soucie pas d’avoir une ou des interface texte. Mais AppImage ne montre à l’extérieur qu’un seul binaire même s’il y en a plusieurs, donc tu peux faire un AppImage d’un IDE qui contient aussi ton compilateur mais le compilateur sera accessible depuis le menu "compiler" de l’IDE mais pas depuis l’extérieur, ce qui est gênant.
C’est une raison pour laquelle AppImage ne convient pas pour l’éditeur de niveau 3D NetRadiant, parce qu’une foultitude d’outils tiers sont utilisés, à commencer par le compilateur de map q3map2, mais un FlatPak permet de « remplir le PATH » avec les binaires qu’il faut exposer à l’utilisateur, comme les paquets ordinaires.
AppImage ça convient bien pour un éditeur d’image comme Gimp, mais ça ne convient pas pour un IDE avec des outils autonomes qui doivent être exposés au système et utilisables par d’autres outils.
ce commentaire est sous licence cc by 4 et précédentes
[^] # Re: Mwarf
Posté par Thomas Douillard . Évalué à 4.
Si j’ai bien compris, pas si tu veux ajouter des plug-ins après coup…
# Conan hunter cpm cget buckaroo cppan ... et surement plein d'autres
Posté par scls19fr (site web personnel) . Évalué à 2.
C'est quoi la différence avec les autres C/C++ Dependency Manager comme
Conan https://conan.io/
hunter https://docs.hunter.sh/
cpm http://www.cpm.rocks/
cget http://cget.readthedocs.io/
buckaroo https://buckaroo.pm/
cppan https://github.com/cppan/cppan
# Commentaire supprimé
Posté par Allenparker343 . Évalué à 0. Dernière modification le 29 juin 2018 à 07:38.
Ce commentaire a été supprimé par l’équipe de modération.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.