# Créer un exécutable pour Mac



## arnaud2157 (20 Juillet 2005)

Bonjour,

Premièrement je suis un novice complet de Mac.

J'ai codé un logiciel sous Windows avec Visual C++ .NET 2003 Pro qui crée un .exe à partir d'un fichier SWF. J'aimerais que ce logiciel qui tourne sous Windows puisse aussi créer des fichiers exécutable compatible avec Mac OS X.

Est-ce possible en continuant mon développement sous Windows?

Dois-je obligatoirement développer sous Mac ou Linux?

Cela à quelle forme un fichier exéctable sous Mac OS X? Cela existe-t-il? (quand je vous dit que je suis un gros newbie niveau Mac)

Tout conseil, remarque, lien, demande de précision...sont les bienvenus
Merci d'avance


----------



## ntx (20 Juillet 2005)

Bonjour,
pour pouvoir compiler du code C++ sur differentes plateformes, il faut que ce code n'utilises que des librairies presentes sur ces plateformes : librairie standard, stl, etc ...
Du moment que tu utilises des librairies specifiques telles que les MFC par exemples, ton code n'est plus portable. Et je pense que c'est ton cas, non ? Car si tu as fait ca sous .Net ca doit etre pour en utiliser les fonctionalites ?


----------



## arnaud2157 (20 Juillet 2005)

OK merci ntx,

Tu as raison j'utilise certaines fonctionnalités spécifiques à Microsoft.

Par contre j' ai une autre question: dans un programme n'utilisant que des fonctionnalités standards, comment le compiler pour qu'il fonctionne sous Mac? (je ne pense pas qu'en prenant l'exécutable Windows cela fonctionne).

Merci d'avance et n'hésitez pas à être précis car je rame  à mort avec les Mac.


----------



## ntx (20 Juillet 2005)

Un compilateur comme gcc est capable de générer du code pour différentes plates-formes. Il faut voir dans la documentation les options possibles. Cependant si ton exécutable "linke" des librairies statiques, il faudra sûrement avoir sur ta machine de compilation les versions Mac et PC de ces librairies. Et si tu veux tester ton programme Mac, là il va falloir mettre la main sur un Mac.
Bref, si tu veux faire une application Mac, c'est tout de même plus simple d'avoir un Mac. 
Toutefois si tu veux t'y mettre, une petite recherche sur Google avec des mots clés comme "cross development" (en Anglais) donne des résultats.


----------



## NightWalker (20 Juillet 2005)

Bonsoir,

En fait, comme t'as expliqué ntx,  partir du moment que le code source n'utilise que des fonctions standards, tu n'auras aucun problème pour le compiler sur d'autres plate forme...


Par exemple, le plus fameux exemple du monde :   _hello.c_


main()
{
   printf ("Hello World\n");
}


Sous windows, tu peux compiler hello.c avec Visual C++, ça marchera

Sous Linux, tu peux le compiler avec gcc, tu auras un exécutable qui donne le même résultat que sous windows

Sous OS X, tu peux le compiler soit avec gcc, soit avec XCode, tu obtiendra le même résultat...

Juste une exception pour XCode 2.1, comme on sait, les futures machines Mac utiliseront le proc Intel. Or, il existe un parc très important de Mac utilisant les processeurs PPC. Comment faire ?

C'est là le point fort de XCode 2.1, il est capable de fabriquer un code binaire commun aux deux proc, juste le module principal (exécutable) sera spécifique à chaque processeur.

Sinon, il existe bien un outil de développement "cross-platform" Windows, Linux, OSX... RealBasic


----------



## ntx (20 Juillet 2005)

oui mais c'est payant : en gratuit il y a Java et Eclipse


----------



## NightWalker (20 Juillet 2005)

Eclipse   il faut vraiment que je zieute cet IDE... 

Bon je vais le downloader pour voir

Thx ntx


----------



## arnaud2157 (21 Juillet 2005)

Merci de vos réponses,

En fait je ne souhaite pas développer en Java. Je veux coder en C++.

J'ai regardé la solution proposée par Ntx, à savoir utiliser gcc. Je pense m'orienter sur cette voie. J'ai trouvé deux compilateurs gcc pour windows, à savoir mingw et cygwin.

Je voudrais savoir si ces compilateurs peuvent générer un fichier hqx (ou un autre type "d'exécutable" Mac)?


----------



## Didier Guillion (21 Juillet 2005)

arnaud2157 a dit:
			
		

> Merci de vos réponses,
> 
> En fait je ne souhaite pas développer en Java. Je veux coder en C++.
> 
> ...




Un fichier .hqx n'est pas un exectuable c'est juste un mode d'encodage pour le transfert via l'Internet.
Je ne pense pas que tu puisse générer un code Mac sur Windows (compilation PPC)

Cordialement


----------



## arnaud2157 (21 Juillet 2005)

Merci Didier,

Si je ne me trompe pas, on peut générer du code Mac sous Linux à l'aide de gcc (Est-ce que quelqu'un sait si c'est possible car je ne fais ici qu'une supposition d'après ce que j 'ai lu sur différent site?).

Donc mon idée est d'utiliser cygwin (qui offre le jeu complet des commandes Unix) pour faire de meme sous windows.

Probleme: Est-ce possible?


----------



## ntx (21 Juillet 2005)

J'ai vu sur un page web ou on parlait de cette question qu'il y etait fait reference a mingw. Essayes de trouver quelque chose la dessus sur Google.


----------



## arnaud2157 (21 Juillet 2005)

Permettez de préciser mon projet pour clarifier les choses. 

En fait mon but est de faire un peu un mProjector pour ceux qui connaissent, mais en permettant a l'utilisateur de générer à partir du même SWF un exécutable windows et un fichier hqx Mac. Sachant que tout se ferait sous windows (on n'aurait plus qu'à transférer le hqx sur un Mac. 

Pour arriver à cela, plusieurs étapes: 

1-construire un exe et un hqx quelconque sous Windows 
2-integrer un swf à ceux ci 
3-comprendre le fonctionnement du SWF pour l'ajout de fonctionnalité 

Donc en ce moment c'est le début et j'en suis à la première étape (même si je m'intéresse aux autres) 

Toute suggestion sur la réalisation de ce projet est la bienvenue

Voili Voilou


----------

