J'ai une dll. et source Visual C ++ pour cela. (Ma DLL est une filière Visual C ++ autour de certains FFMPEG AV * Libs - une autre dll précompilée) tandis que dans la même solution (.sln), j'ai un projet C # qui utilise ma DLL. p>
Quelles sont les étapes générales pour moi de porter mon projet à Mono? P>
3 Réponses :
Compilez votre projet dans Visual Studio, mais activez les options de compilateur suivantes: P>
L'assemblage résultant devrait être pur CLR et fonctionnera avec Mono. P>
Cette Page contient tout ce que vous pourriez rencontrer lors de la compilation d'une version qui fonctionne sur Mono. < / p>
Le point de son ensemble wrapper est susceptible de mélanger du code géré et non géré dans un seul assemblage (ensemble de mode mixte). Restreindre l'assemblage à CLR défaite cela.
Je suggérerais également jetter un coup d'oeil à cela - p>
http://mono-tools.com/store/ p>
Il existe différents outils disponibles pour vous aider à porter à mono - vous pouvez même déboguer dans Visual Studio et pour emballer pour le déploiement sur Linux. p>
Je reçois des postes négatifs alors laissez-moi vous assurer - je ne vends pas ce produit - je pense juste que c'est une bonne idée de regarder des outils et de gagner du temps.
Je pense que les bowvotes sont parce que mono n'exécute tout simplement pas d'assemblages de mode mixte sur Linux. Les monotools ne vous aident pas ici.
Mono ne prend pas en charge les ensembles de mode mixte sur les systèmes d'exploitation non-Windows. P>
Supprimez votre emballage C ++ et réécrivez votre application en utilisant uniquement p / invoke à appeler dans un code natif. P>
Voir aussi: www.mono-project.com/cplusplus p>
Est-ce une DLL C ++ / CLI ou géré C ++?