Je connaissais pas MXE. Mais je viens de jeter un œil.
Déjà MXE maintient sa propre liste de paquetage de dépendances. D'une, ça doit être un travail de dingue de les garder à jour et vérifier que chacun compile proprement à chaque nouvelle version; de deux, je suis persuadé qu'il n'est pas à jour sur plein de paquetages à cause du premier point (sauf si l'équipe est vraiment grosse?); de trois, même si l'installation des dépendances reste simplifiée certes par rapport à tout faire à la main, il n'empêche que tu te tapes des dizaines de compilations pour un gros projet.
Quand je compile GIMP par exemple, j'ai pas compté, mais avec les dépendances de dépendances, je pense qu'y a bien une vingtaine au moins de paquets installés. Ben ça se fait en genre une minute. C'est du pré-compilé. Donc c'est rapide, et surtout ça marche tout le temps. Le seul cas où une installation de dépendance foire avec crossroad, c'est si les serveurs Fedora sont down. :-)
MXE, ils compilent tout sur l'ordi de build. Donc c'est lent, et ça peut foirer (car on sait tous que les compilations, c'est pas parce que ça marche bien chez le dév que ça marche chez vous (même si c'est normalement le but recherché). Y a beaucoup plus de paramètres en compte.
Et surtout je ne me charge pas de cette liste de dépendances! Donc j'en ai genre probablement bien plus que MXE sans rien avoir à faire. Crossroad va simplement télécharger la liste des paquets Fedora dès que tu l'invoques et est donc toujours à jour par rapport à la dite liste.
Voici donc la liste complète des dépendances de Crossroad: http://download.opensuse.org/repositories/windows:/mingw:/win64/openSUSE_12.3/noarch/
MXE a ça apparemment: https://github.com/mxe/mxe/tree/master/src
C'est pas mal aussi, et j'ai pas compté précisément pour voir qui a la plus grosse. Mais je préfère de loin ne pas avoir à me préoccuper de cela.
Pareil j'ai l'impression que MXE va jusqu'à lui-même compiler MinGW ou MinGW-w64. Franchement toutes les grosses distrib ont MinGW/MinGW-w64 d'installable pour ton OS. Et si vraiment tu veux une version plus récente, y a des builds nocturnes officiels aussi (en tous cas pour MinGW-w64). Vraiment pourquoi s'embêter à compiler ça?
Tout comme les dépendances, je préfère de loin déléguer.
Pour le reste, si tu regardes le tuto de MXE, ça aide pas beaucoup plus que cela. J'ai l'impression que son point principal, c'est de proposer des Makefile pour diverses dépendances.
Mais ils te demandent toujours de modifier tes variables d'environnement et de taper les configure et cmake à rallonge. C'était justement la partie chiante que je suis content d'avoir automatisé. Après tout, c'est toujours les mêmes options. Pourquoi me faire chier à les taper ou copier-coller à chaque fois plutôt que les automatiser dans un script?
Film d'animation libre en CC by-sa/Art Libre, fait avec GIMP et autre logiciels libres: ZeMarmot [ http://film.zemarmot.net ]
[^] # Re: Comparatif
Posté par Jehan (site web personnel, Mastodon) . En réponse à la dépêche À la Croisée des Chemins: crossroad, environnement de cross-compilation. Évalué à 4.
Je connaissais pas MXE. Mais je viens de jeter un œil.
Déjà MXE maintient sa propre liste de paquetage de dépendances. D'une, ça doit être un travail de dingue de les garder à jour et vérifier que chacun compile proprement à chaque nouvelle version; de deux, je suis persuadé qu'il n'est pas à jour sur plein de paquetages à cause du premier point (sauf si l'équipe est vraiment grosse?); de trois, même si l'installation des dépendances reste simplifiée certes par rapport à tout faire à la main, il n'empêche que tu te tapes des dizaines de compilations pour un gros projet.
Quand je compile GIMP par exemple, j'ai pas compté, mais avec les dépendances de dépendances, je pense qu'y a bien une vingtaine au moins de paquets installés. Ben ça se fait en genre une minute. C'est du pré-compilé. Donc c'est rapide, et surtout ça marche tout le temps. Le seul cas où une installation de dépendance foire avec crossroad, c'est si les serveurs Fedora sont down. :-)
MXE, ils compilent tout sur l'ordi de build. Donc c'est lent, et ça peut foirer (car on sait tous que les compilations, c'est pas parce que ça marche bien chez le dév que ça marche chez vous (même si c'est normalement le but recherché). Y a beaucoup plus de paramètres en compte.
Et surtout je ne me charge pas de cette liste de dépendances! Donc j'en ai genre probablement bien plus que MXE sans rien avoir à faire. Crossroad va simplement télécharger la liste des paquets Fedora dès que tu l'invoques et est donc toujours à jour par rapport à la dite liste.
Voici donc la liste complète des dépendances de Crossroad: http://download.opensuse.org/repositories/windows:/mingw:/win64/openSUSE_12.3/noarch/
MXE a ça apparemment: https://github.com/mxe/mxe/tree/master/src
C'est pas mal aussi, et j'ai pas compté précisément pour voir qui a la plus grosse. Mais je préfère de loin ne pas avoir à me préoccuper de cela.
Pareil j'ai l'impression que MXE va jusqu'à lui-même compiler MinGW ou MinGW-w64. Franchement toutes les grosses distrib ont MinGW/MinGW-w64 d'installable pour ton OS. Et si vraiment tu veux une version plus récente, y a des builds nocturnes officiels aussi (en tous cas pour MinGW-w64). Vraiment pourquoi s'embêter à compiler ça?
Tout comme les dépendances, je préfère de loin déléguer.
Pour le reste, si tu regardes le tuto de MXE, ça aide pas beaucoup plus que cela. J'ai l'impression que son point principal, c'est de proposer des Makefile pour diverses dépendances.
Mais ils te demandent toujours de modifier tes variables d'environnement et de taper les configure et cmake à rallonge. C'était justement la partie chiante que je suis content d'avoir automatisé. Après tout, c'est toujours les mêmes options. Pourquoi me faire chier à les taper ou copier-coller à chaque fois plutôt que les automatiser dans un script?
Film d'animation libre en CC by-sa/Art Libre, fait avec GIMP et autre logiciels libres: ZeMarmot [ http://film.zemarmot.net ]