Sujet Le pub des programmeurs
- 1 925 réponses
- 117 participants
- 123 044 vues
- 130 followers
Anonyme
nonconforme
Affiliation : Dirigeant Fondateur d'Orosys - Two notes Audio Engineering
bixmor
Coté langage, c'est de Objective-C: si tu connais le C et ou Java, tu devrais t'y retrouver facilement. Plus d'infos ici
Wolfen
Merci quand même
Développeur de Musical Entropy | Nouveau plug-in freeware, The Great Escape | Soundcloud
Dr Pouet
Citation : Bon j'ai compris, je vais installer un environnement C++ sur un Mac
Ca ça ne doit pas être nécessaire.
Sur mon vieux Powerbook G4 :
Citation : $ gcc --version
gcc (GCC) 3.3 20030304 (Apple Computer, Inc. build 1495)
Copyright (C) 2002 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
$ make --version
GNU Make version 3.79, by Richard Stallman and Roland McGrath.
Built for powerpc-apple-darwin7.0
Copyright (C) 1988, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99
Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Report bugs to <bug-make@gnu.org>.
Je me suis jamais trop penché sur la question, mais je crois qu'un environnement Gnu assez classique est systématiquement livré avec OS X (faut juste peut-être installer les outils de développements quand on installe l'OS).
Tu dois facilement en apprendre plus sur le site d'Apple, et sur leurs forums pour développeurs. Sinon avec Google, les infos doivent être facile à trouver.
Wolfen
Question subsidiaire sinon... A priori, si j'ai pas envie de tester mon programme sur Mac, est-ce que je pourrais quand même le compiler sur une plateforme Windows en dmg ? A priori ça doit être faisable avec un gcc ?
Développeur de Musical Entropy | Nouveau plug-in freeware, The Great Escape | Soundcloud
bixmor
Dr Pouet
Citation : Question subsidiaire sinon... A priori, si j'ai pas envie de tester mon programme sur Mac, est-ce que je pourrais quand même le compiler sur une plateforme Windows en dmg ? A priori ça doit être faisable avec un gcc ?
Toujours pifométriquement : je serais pas surpris qu'il te manque un paquet de librairies système. J'imagine mal que des gens fassent ainsi de la cross-compilation de Windows vers OS X. De Windows vers Palm, ok, mais vers OS X ? Il me semble plus simple d'acheter un Mac, genre Mac mini.
Sinon le .dmg n'est pas un format de compilation, mais juste de stockage que l'on peut "monter", comme une partition ou une image Iso d'un disque ou encore un fichier tar.
Faudrait que Gabou vienne répondre à tes questions, voire te recompile ton programme.
Pov Gabou
Citation :
J'aimerais savoir si il existe un moyen de compiler et de tester pour la plateforme Mac sur mon PC Windows
Mac OS X utilise gcc comme compilateur, le meme que sous linux, et tous les unix non commerciaux a ma connaissance. Il est possible de fabriquer des cross compiler avec, c'est a dire des des compilo qui vont generer des programmes executables sur une autre machine: par exemple, j'ai un cross compiler sur ma machine linux qui genere du code pour solaris sous Sparc.
En pratique, je pense pas que ce soit super jouable pour ce que tu as en tete: si tu fais un programme non trivial, il va utiliser la librairie C, et il faut donc que tu aies la librairie C pour la plateformce cible. Si tu veux faire un programme en ligne de commande qui depend de 2-3 librairies, ca reste jouable. Si tu veux faire un truc graphique qui va dependre de dizaines (et tres certainement des centaines) de librairies, c'est du delire integral... Sans compter que t'as pas les sources de toute facon pour mac.
En plus, j'ai jamais vu de cross-compiler pour generer du code mac os X; Mac OS X a pas mal de specificites par rapport aux autres Unix (format binaire Mach O vs Elf, librairies dynamiques non standart, etc... Bref, la merde) qui rendent le truc vraiment difficile, j'imagine.
Tout ca pour dire, ce que tu veux faire, c'est possible en theorie, en pratique, je te le deconseille vraiment plus que fortement.
Ce que je te conseille, c'est plutot d'avoir un mac intel, boure de Ram (au moins 2 Go), et d'utiliser parrallel. J'ai un tout petit peu teste sur le mac book de mon petit frere, et ca marche vraiment nickel. Tu codes sous windows qui tourne sous parrallel, et tu peux tester en meme temps sur le mac (ou alors tu peux coder sous mac aussi). Sur le mac book, un linux en graphique tournait assez bien, mais avec 512 Mo de Ram, ca swappe vite. Avec 1 Go, des que tu utilises un peu mac os X et linux en meme temps, c'est limite (et les compilos C++, c'est pas le truc qui aime etre limite en ram: ca bouffe).
Faire du cross platform, c'est chaud. JUCE est cross platform, OK, mais entre le compilo MS et gcc, sur du C++, va y avoir des constructions qui peuvent differer (il parait que le compilateur MS s'est ameliore depuis la version 7; sur la version 6, c'est une horreur, et sur du code C, meme MS 7 est vraiment chiant, style bool qui devient _Bool, etc...).
Ensuite, il va falloir gerer le build; les projets VS, ca marche pas trop sous Mac Os X. Je sais pas quelle est la solution optimale. Ce que j'essayerais, c'est d'utiliser un outil de build qui soit portable et non dependant de l'outil de developpement (CMake et scons). Je sais pas s'il y a possibilite d'import/export entre les dsp/dsw et autres trucs MS et xcode (qui est le VS sous mac).
Pour le testing, parrallel est aussi ce qu'il y a de mieux, je pense.
Mais bon, c'est un probleme qui se pose a tout developpeur audio, donc je pense qu'en allant trainer sur KVR, tu dois trouver des reponses, non ?
En general, le cross platform est balaise; c'est jamais la theorie qui foire, toujours des trucs bien chiant, des petits details: un OS va avoir des noms differents pour les librairies, genre mac os X met la version avant le suffixe alors que tous les autres UNIX a ma connaissance font l'inverse; windows lui ne connait meme pas le principe de versioning des librairies (a moins d'utiliser .Net). Et des exemples comme ca, je peux t'en filer des dizaines, pour des programmes dont l'environnement (au niveau programmation) est beaucoup plus simple qu'un plug in.
Citation :
Tu dois facilement en apprendre plus sur le site d'Apple, et sur leurs forums pour développeurs.
Les forums, je sais pas, mais le site de developpeur d'Apple est vraiment une sombre merde, hyper mal fichue, et c'est super dur de trouver des infos, je trouve. En tout ca, ca donne pas envie de developper pour mac os X.
Je suis loin d'etre un fan de MS, mais au moins, trouver les infos est possible, et tu vois tout de suite la difference de mentalite a ce niveau la, d'ailleurs.
Citation : Je me suis jamais trop penché sur la question, mais je crois qu'un environnement Gnu assez classique est systématiquement livré avec OS X (faut juste peut-être installer les outils de développements quand on installe l'OS).
L'environnement de developpement mac os X est base sur les outils GNU. Le compilateur de xcode, c'est gcc. Donc la desssus, pas de probleme, c'est l'outil officiel.
Par contre, xcode est encore assez limite (version 2.1, du moins). J'aime pas vraiment ces environnement de toute facon, mais au moins, Visual Studio te claque pas trop dans les mains, ou tu comprends pourquoi. Xcode m'a deja retourne des erreurs pas possibles, que j'ai jamais comprises, et ce pour du code qui compilait sans probleme sous le meme compilo sous linux.
C'est toujours pareil avec ces trucs: tant que tu fais ce pour quoi ca a ete concu, ca marche, mais des qu'il faut un peu modifier le truc standart, ca marche tout de suite moins bien.
lohworm
Hors sujet : Il est plaisant de voir comme les comparaisons Vista/Win/Mac/OSX sont ici de haut niveau et surtout passablement dépassionnée
je repars sur la pointe des pieds
Pov Gabou
http://www.scons.org/
qui est vraiment bon sur le principe, et est utilise par plusieurs gros projets (version GPL de quake 3 et blender, ardour). Comme c'est base sur un langage de scripting vraiment excellent (python), ca permet de gerer beaucoup de chose, mais bon, ca sera quand meme du boulot. Je peux un peu t'aider pour te montrer comment ca marche. Tu auras besoin de connaitre python pour faire des trucs non triviaux.
Il fait aussi l'export vers VS, et peut etre meme vers Xcode.
Il y a aussi CMake, mais je connais tres peu. Kde, un des plus gros projets open source, l'utilise pour la version 4, qui doit marcher sous unix, mac os X et windows.
Il y a aussi make, tout simplement, mais bon, sous windows, j'y crois pas trop, vu qu'il y a pas de shell, a moins d'utiliser mingw ou cygwin, qui sont d'utilisation plus penible (moins que windows, mais quand meme ).
- < Liste des sujets
- Charte