Je commence à utiliser Mono pour développer des applications en C# et C++. Je voulais vous demander, comment Mono compile-t-il le code C++ ? Utilise-t-il GCC ? Il est étonnant de voir qu'il dispose des conteneurs STL... Aussi, puis-je utiliser les bibliothèques Boost et GSL avec Mono ? Merci d'avance !!!
Réponses
Trop de publicités?Je pense que vous devez utiliser MonoDevelop l'IDE, par opposition à Mono lui-même.
Oui, MonoDevelop utilise gcc/g++ pour compiler le code source C/C++, mais il n'est pas compilé en CIL - il est compilé en un binaire natif.
Si je comprends bien, vous devriez être en mesure d'utiliser Boost sans problème.
Si, toutefois, vous demandez si Mono prend en charge les assemblages ou les exécutables en mode mixte (c'est-à-dire les assemblages/exe qui contiennent à la fois du CIL natif et du CIL .NET), je suis au regret de vous informer que cette fonctionnalité n'est pas prise en charge, pas plus que la compilation de C++ en CIL pur par Mono.
Tant que vous n'avez pas besoin du mode mixte (c'est-à-dire que vous oubliez la partie native et optez pour le CIL uniquement), mono fonctionne avec du code C++ (j'ai entendu dire qu'ils supportent maintenant expérimentalement le mode mixte, sur Windows en particulier, et ailleurs via wine, mais je pense que cette partie n'est PAS prête pour le prime time). Le seul compilateur C++ bien supporté à l'heure actuelle est Microsoft C++/CLI sur les frameworks Net 2.x ; des efforts sont en cours (depuis de nombreuses années maintenant) pour ajouter gcc, mais je ne connais aucun résultat prêt pour la production à ce jour :-(.