Pour info, Clang serait capable de générer (dans le cas de l'installateur de chromium, à priori) des binaires plus petits tout en étant compatible avec l'ABI de MS.
Ce serait du coup utilisé par Google pour générer lesdits binaires.
À noter, pour accomplir ce fait Clang dépendrais de MSVC, et la compilation est plus lente (à peu près 15%), mais tout ça est expliqué quand le lien quivabien.
PS: par rapport à l'emploi du conditionnel: je n'ai pas assez creusé pour être sûr de tout avoir compris, donc plutôt qu'affirmer avec force une ânerie, je préfère rappeler qu'il vaut mieux prendre des pincettes quand on lis mes propos :)
# Clang tout seul
Posté par rewind (Mastodon) . Évalué à 3.
En fait, non. C'est bien Clang tout seul qui est utilisé, et sa version
clang-cl.exe
qui peut remplacercl.exe
présent dans MSVC (avec les mêmes options). Pour l'édition de lien, là encore, on peut utiliserlink.exe
fourni avec MSVC ouldd.exe
fournit par le projet LLVM.# En fait non le binaire généré est plus gros
Posté par NicolasP . Évalué à 4. Dernière modification le 06 mars 2018 à 21:06.
L'article est plus mitigé (et dit l'inverse dans le cas de la version 64 bits optimisée avec /O2). Par contre, le binaire généré avec clang se compresse mieux que celui généré avec msvc. Du coup, l'installeur résultant est plus petit.
Le gras est de moi :
"However, compared to MSVC builds using link-time code generation (LTCG) and profile-guided optimization (PGO) Clang generates larger code in 64-bit for targets that use /O2 but smaller code for targets that use /Os. The installer size comparison suggests Clang's output compresses better."
La motivation des développeurs n'est pas dans la recherche d'un binaire plus petit ou plus optimisé mais dans le fait d'utiliser le même compilateur sur toutes les plateformes.
[^] # Re: En fait non le binaire généré est plus gros
Posté par freem . Évalué à 4. Dernière modification le 07 mars 2018 à 15:53.
Si ça avait juste été une question de qui à la plus grosse (enfin, la plus petite) je n'aurai pas posté ça.
Je pense que ce n'est pas juste de pouvoir utiliser le même compilo sur windows que sur les autres OS le gros point (sinon j'imagine qu'ils auraient juste utilisé GCC ou mingw en fonction de l'OS), mais vraiment d'utiliser Clang lui-même (et ses outils d'analyse et de debug) en gardant une ABI compatible (donc de pouvoir utiliser les libs C++ & co de MS, j'imagine qu'elles doivent avoir des avantages techniques, bien que je ne voies pas lesquels).
M'enfin, je reconnais que mon bookmark est mal tourné (en plus d'en avoir compris plus que prévu de travers… oups)
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.