# Moi je veux faire du C...



## .Steff (11 Novembre 2005)

Alors j'ai lu a différentes reprises un peu partout sur le web que l'on ppouvait faire du C sur mac mais alors je vous avoue que je n'ai rien trouvé!!
N'y aurait il pas un logiciel du genre *microsoft visual C++*!!!!!!Non c'est bon je déconne j'en veux un qui marche moi....


----------



## PA5CAL (11 Novembre 2005)

XCode. Et lui il est gratuit !

Regarde ICI.

Tu peux le télécharger LA.

Si tu veux faire du C "tout bête", ça inclut le compilateur GCC que tu peux utiliser sous Terminal.


----------



## .Steff (11 Novembre 2005)

ouais je l'ai deja celui la dans mon mac mais je comprends pas trop comment on fais pour faire avec...
C'est vrai j'avoue que j'ai été habitué a faire du C sur Windows ou plus souvent linux et c'est pas la meme facon de se servir des logiciel donc je suis un peu pommé..


----------



## clampin (11 Novembre 2005)

Pour faire du C dans xcode (du moins pour les programme en ligne de commande) il suffit de choisir Standart Tool dans les projet.... et c'est tout.. ensuite tu tape ton code et le compile.....


----------



## .Steff (12 Novembre 2005)

je trouve pas...


----------



## y&b (12 Novembre 2005)

.Steff a dit:
			
		

> je suis un peu pommé..


Celle là elle est belle pour un switcheur ....   
ps : je suis désolé j'ai pas pu m'en empecher :rose:. Bon c'est promis j'vous laisse tranquille maintenant


----------



## .Steff (12 Novembre 2005)

Je ne suis pas le premier a la faire je pense.
elle est trop facile...


----------



## y&b (12 Novembre 2005)

.Steff a dit:
			
		

> Je ne suis pas le premier a la faire je pense.
> elle est trop facile...


Oui mais je m'en lasse pas 
Bon courage pour ton problème et patience, quelqu'un va te donner la solution.
ps : moi j'en suis bien incapable


----------



## .Steff (12 Novembre 2005)

y&b a dit:
			
		

> Oui mais je m'en lasse pas
> Bon courage pour ton problème et patience, quelqu'un va te donner la solution.
> ps : moi j'en suis bien incapable



Et bien merci à toi alors!!!


----------



## ntx (12 Novembre 2005)

.Steff a dit:
			
		

> je trouve pas...


Tu ouvres XCode, dans "Fichier", "Nouveau projet".
Dans la rubrique "Commande Line Utility", tu sélectionnes "Standard Tool" pour du C ou "C++ Tool" pour du C++.
N'oublies pas qu'il existe un help dans XCode qui explique tout de qu'un débutant doit savoir et tu peux trouver des tutoriels sur le web, sur "Projet Omega" par exemple.


----------



## PA5CAL (12 Novembre 2005)

clampin a dit:
			
		

> Pour faire du C dans xcode (du moins pour les programme en ligne de commande) il suffit de choisir Standart Tool dans les projet.... et c'est tout.. ensuite tu tape ton code et le compile.....


Traduction:
- lance XCode
- va dans le menu "File" et clique sur "New Projet..."
- dans la fenêtre, va à "Command Line Utility", choisis "Standard Tool" et clique sur "Next"
- donne un nom à ton projet (par exemple "MonAppliEnC"), choisis le dossier où il sera créé, et clique sur "Finish".

Là, XCode crée le projet (un certain nombre de fichier dans le dossier que tu as spécifié), et affiche la fenêtre correspondante avec dans la barre latérale l'arborescence pour accéder à tous les éléments qui le composent.

Dans la barre latérale, va sous ton projet ("MonAppliEnC", dans mon exemple) et double-clique sur "main.c". Le fichier s'ouvre dans une fenêtre d'édition afin d'être modifié par tes soins.

Dans la barre de boutons en haut de la fenêtre d'édition, tu as un "Build and Go" pour compiler et exécuter ton programme en C.

Voilà pour l'essentiel. Pour aller plus loin, cherche un peu dans les menus, lis la doc, et reviens sur ce forum poser tes questions. Nous nous ferons une joie d'y répondre.





(EDIT: Zut, grillé !)


----------



## .Steff (13 Novembre 2005)

Ha merci beaucoup tout le monde c'est sympa!!!
Désolé d'avoir posé une question comme ca mais la doc que j'ai de Xcode est assez succinte pour ne pas dire inéxistante.
sinon c'est tout "In english"
Merci beaucoup


----------



## canibal (13 Novembre 2005)

[mode geek]
Pour faire un programme en c 
tu ouvres le terminal 
tu tapes vi main.c 
tu fais escape+I
tu tapes ton code
escape+:+wq
de même pour ton head.h
puis dans ta console gcc -o monprgm main.c head.h
plus qu'a faire ./monprgm
et voilà ton exe fonctionne
[fin mode geek]

M'enfin avec Xcode c'est sympa aussi ....  

Boin allez je vais me coucher j'suis fatiguer moi....


----------



## foux (13 Novembre 2005)

canibal a dit:
			
		

> [mode geek]
> Pour faire un programme en c
> tu ouvres le terminal
> tu tapes vi main.c
> ...



Et le message de canibal signifie tout simplement, que si tu as déjà fait du C/C++ sous linux (ou unix) tu peux le faire exactemtn de la même façon!

Avec fink (ou autre) tu peux même utiliser les mêmes IDE (kdevelop, ....)


----------



## .Steff (13 Novembre 2005)

Sympa mais le mode geek je connaissais   
Alors que Xcode c'est total decouverte.


----------



## Estroy (13 Novembre 2005)

Hello tout  le monde

je commence tout juste le C sur Mac.
j'ai des cours de C à la fac mais je suis le seul sur Mac et j'ai pas envie de rejoindre le reste du troupeau.
je commence à utiliser Xcode tools, masi j'ai fais mes premieres appli (addition de nombre etc...) en compilant dans le terminal.

Je cherche un tuto sur le C standart sous Xcodetools 
En effet, je en suis pas informaticien de formartion, je parts donc de zero et en plus de ca les cours que j'ai ne sont pas fait dans mon environnement de programmation.

j'aimerai en savoir plus sur ce qu'est le linkage de libriarie et comment cela est gerer par Xcode: voila concretement le probleme concernent un programme fait en cours :

_
Pour DevC++ : 
La librairie libwinmm.a à besoin d'être liée au projet, ce que l'on appelle le linkage. Pour ce faire il faut aller à : 
menu Projet / options du projet / onglet paramètres / colonne éditeur de lien 
et y taper : -lwinmm 
ensuite clquer sur Ok.
Et en plus ne pas oublier d'inclure le fichier d'entête <windows.h> dans le fichier source avec l'instruction :
#include <windows.h>
Ensuite seulement il est possible d'utiliser la fonction PlaySound() _


bon ca c'est sous Dev C++, cette librarie existe-t'elle sous Mac et sinon, quelle librarie utilisée et comment ?

Je sais que ca fait beacoup de questions, mais je peux pas demander d'infos autours de moi.

Comme Luke face au coté obscure, vous etes mon seul espoir...


----------



## PA5CAL (13 Novembre 2005)

Estroy a dit:
			
		

> _Pour DevC++ :
> La librairie libwinmm.a à besoin d'être liée au projet, ce que l'on appelle le linkage. Pour ce faire il faut aller à :
> menu Projet / options du projet / onglet paramètres / colonne éditeur de lien
> et y taper : -lwinmm
> ...


Ça sent la programmation sur PC tout ça !

Si tu espères suivre les cours à la lettre, il te faut disposer de Dev C++. En tout état de cause, il te faudra oublier un moment XCode.

Dev C++ est un environnement de développement prévu pour Win32 (Windows, donc). Dev-C++ est gratuit et Open Source, et semble aussi être utilisable sous BDS (voir SourceForge). Ça offre une petite porte de sortie, mais c'est loin d'être gagné, parce que je n'ai pas encore vu de Dev C++ tout prêt pour Mac.

Quant au "#include <windows.h>" qui permet d'inclure tout un paquet de déclarations propres à Windows, et des redéclarations de type très usitées chez Microsoft (comme NULL, LONG, CHAR...).

Tout cela me fait dire qu'il n'est pas impossible que tu arrives un jour à compiler et à faire tourner sur Mac, comme tes camarades sur PC, les exemples qu'on te donne. Mais tu n'es pas arrivé au bout de tes peines. Et si tu y parviens par toi-même, tu auras atteint un tel niveau de connaissance en informatique que tes exemples de cours n'auront plus de raison d'être !!!

Microsoft a envahi l'Education Nationale, et on n'est pas près de s'arrêter de bouffer du Windows. Si tu veux continuer à suivre tes cours tranquillement, fais l'acquisition d'un (petit) PC, ou de Virtual PC (émulateur PC pour Mac). Ça ne t'empêchera pas de continuer de coder sous XCode du C/C++ standard Ansi.


----------



## ntx (13 Novembre 2005)

Estroy a dit:
			
		

> j'aimerai en savoir plus sur ce qu'est le linkage de libriarie et comment cela est gerer par Xcode: voila concretement le probleme concernent un programme fait en cours :


Le linkage permet faire le lien entre les fonctions et les symboles qui tu as utilisé dans ton programme et le code effectif de ses fonctions et les définitions de ses symboles.
Par exemple : si dans ton code tu utilises la fonction "printf", le code pour exécuter ta fonction n'est pas dans ton programme mais dans la librairie stdc. Donc lors après linkage, ton programme saura où chercher le code pour exécuter ta fonction.
Pour accéder aux paramètres de compilation et de linkage, tu fais un "Get info" sur ta target et tu vas dans l'onglet "Build". Tout est là. Pour ajouter une librairie c'est le champ :"Other linker flags". 
Ou plus simplement, clic-droit sur le projet et "Add existing file...", et tu ajoutes ta librairie.

Mais comme le dit PA5CAL, pour Dev C++ c'est rapé sur Mac.


----------



## p4bl0 (13 Novembre 2005)

Avec un nom de thread comme ça, j'ai cru que c'était une erreur de forum, que c'était censer être au bar... 
 


bon, elle est facile est je suis étonné que personne ne l'ai sorti mais bon...


----------



## Estroy (13 Novembre 2005)

Merci beacoup pour vos réponses !

je voudrais juste pouvoir utiliser d'autre librairie que celle qui n'existe que pour PC.

par exemple, on doit bientot commencer utiliser la librarie *allegro*, je croi qu'elle existe bien pour Mac non ?
Mon gros problème c'es effectivement d'apprendre au travers du cours, tout en cherchant la manière d'appliqué ce que l'on voit sur mon Mac.
j'a i le même probleme en 3d ou l'on bosse sur 3ds max, masi ce qui est sur , c'est que si je commence a bosser sur Pc, j'aurais tendance a travailler ensuite sur PC , car je serais famillié de cet environnement.
Mon prof de C est très ouvert d'esprit et très curieux, totalement pret à m'aider pour développer les même applications que celle sur Pc sur Mac.
Le problème c'est que débutant completement en programmation, je ne me pose pas les bonnes questions et je ne sais pas par où commencer quand, comme sur le code que vous avez eu la gentille de lire, des problemes de compatibilité Windows/Mac OS apparaissent.

Installer virtual PC sur mon Mac, d'en arriver là ca me ferais trop mal au ***
Je vais en discuter avec mo prof, tout les autres étudiants étant équipés de mac (on est 6 sur 60) ont quitté le cours....

Merci pour les informations concernant le linkage, je comprends déja un peu mieux.


----------



## ntx (13 Novembre 2005)

Edit : oupsss, je me suis trompé de fil. A suivre 50 discussion à la fois


----------



## .Steff (13 Novembre 2005)

ntx a dit:
			
		

> Y a un truc qui me turlupine : si j'ai bien compris tu es débutant en C. Alors j'ai du mal à voir pourquoi tu attaques déjà des librairies pour des trucs aussi spécifiques que l'audio et l'image. Il me semblait qu'il y avait assez à apprendre avec les généralités des bases de la programmation en C et de l'algorithmique pour occuper n'importe quel étudiant pendant quelques mois sans avoir recours à des outils spécifiques. Non ?



Huumm ca c'est une remarque forte interressante et tout a fait pertinente.


----------



## Estroy (13 Novembre 2005)

bah le truc c'est que c'est aps moi qui décide du contenu des cours;
j'ai intégré un DESS de création numérique, il y à la fois des gros developpeur des graphistes et des gens come moi qui viennent de sciences humaines.
Au 2e semestre on développent des projets en équipes.
au premier on a tout un tas de cours techniques et théoriques en commun.
il n'y pas de cours de niveaux, soit tu t'accroches soit tu laches prises.
Alors débuté et en plsu etre le seul sous mac...
je voulais juste essayer de m'accrocher le plus possible , si c'est trp dur et bien je passerais sous PC.
ca changera pas que dans deux semaines, je serais censer faire la structure d'un Pacman en C.....

mais je suis totalement d'accord avec vous.


----------



## ntx (13 Novembre 2005)

eStroy,
Aie, y a du boulot en perspective !  
Si tu dois faire des programmes qui tournent sur Mac et PC, regardes du côte de la SDL pour les images et le son. Mais il te faudra auparavant maîtriser les bases, désolé.


----------



## .Steff (13 Novembre 2005)

bon courage a toi en tout cas!!!


----------



## Estroy (13 Novembre 2005)

bon , et bien votre jugement est sans appel.... 


Auriez vous toutefois une méthode de travail a me proposer pour alleger la casse ?
je vais essayer encore un temps sinon je passerasi sur PC, mais bon je trouvais que c'étais un exercice gratiffiant de tenter de resister à la pression du plus grand nombre.


----------



## ntx (13 Novembre 2005)

Pour apprendre le C, c'est pareil sur Windows, Mac OSX ou tout autre système : le C est le même pour tout le monde. Ce qui change, ce sont les implémentations (les librairies) pour les fonctions graphiques ou audio, mais là on n'est plus dans le C de base.
Pour ton projet, est-ce que les outils à utiliser sont fixés et obligatoires ? Si non, à toi de choisir les librairies qui permettront de travailler à la fois sur Windows et sur Mac OSX.


----------



## Estroy (14 Novembre 2005)

non je peux travailler sur ce que je veux.
Je dois donc comprendre comment fonctionne les librairies sous Xcodes par exemple.
le seul probleme, c'est que tout les cas concret sont donnés en cours sur PC.
Ou puis je trouver un annuaires des libraries existantes sur Mac ?
la librarie allegro par exemple était faite pour Mac os à l'origine, je pense qu'elle doit toujours exsiter non ?


----------



## ntx (14 Novembre 2005)

Oui elle existe et tu peux la récupérer avec Darwinport. Cette application te permet de récupérer des librairies toutes adaptées et compilées pour Mac OSX (sinon il faudra te farcir la compilation à la main car le site d'Allegro ne propose pas les binaires pour Mac OSX, on se demande bien pourquoi  ).
Après il te suffit de l'ajouter à ton projet sous XCode pour pouvoir l'utiliser.

Il n'y a pas de dictionnaire des librairies existantes (une idée de site ? ), mais une recherche sur Google te donne en général rapidement la réponse. Sinon Apple te propose une liste de produits.


----------



## Estroy (14 Novembre 2005)

ntx, merci mille fois pour tout ces renseignements !

j'ai telechargé fink pour le moment, je vais voir pour trouver Darwinport


----------



## tatouille (15 Novembre 2005)

.Steff a dit:
			
		

> je trouve pas...



il ya un onglet help dans xcode
et quand je cherche dans la doc je trouve c'est bizarre
je suis désolé on est beaucoup ici à travailler sous linux
et ca n'est pas si différents des kdetools par exemple ...

il ne faut pas confondre capacité d'adaptation et je peux le moins pour le moins ...


----------



## Céroce (15 Novembre 2005)

tatouille a dit:
			
		

> il ya un onglet help dans xcode
> et quand je cherche dans la doc je trouve c'est bizarre


 
Ben, je sais pas, mais moi non plus j'arrive jamais rien à y trouver dans l'aide de xCode. C'est super mal foutu, et ça renvoit toujours un message pour nous dire que ce qu'on cherche est introuvable dans la doc (ah bon, NSString introuvable???)

Beaucoup de gens utilisent Cocoa Browser ou AppKiDo pour cette raison.


----------



## Fulvio (15 Novembre 2005)

Estroy a dit:
			
		

> bon , et bien votre jugement est sans appel....
> 
> 
> Auriez vous toutefois une méthode de travail a me proposer pour alleger la casse ?
> je vais essayer encore un temps sinon je passerasi sur PC, mais bon je trouvais que c'étais un exercice gratiffiant de tenter de resister à la pression du plus grand nombre.



Programmation Carbon avec Xcode ? Cette API utilise le C++ et permet de faire des applications Aqua natives. Mais les bibliothèques ne sont pas les mêmes que sous Windows.

Programmation Cocoa avec XCode. Apparemment plus facile à utiliser que Carbon, elle utilise par contre un dérivé du C plus rare (Objective-C).

Et Qt ? Ca pourrait peut-être convenir ? C'est un environnement de développement multi-plateforme (Win, Linux, Mac) qui utilise le C++, mais lui aussi ses propres bibliothèques. Gratuit à condition de licencier son projet en GPL.

Sinon, s'il s'agit de programmation .NET, tu peux voir avec Mono, mais là, ça devient expérimental.


----------



## .Steff (15 Novembre 2005)

http://forums.macg.co/vbulletin/showpost.php?p=3171471&postcount=1


----------



## tatouille (15 Novembre 2005)

Céroce a dit:
			
		

> Ben, je sais pas, mais moi non plus j'arrive jamais rien à y trouver dans l'aide de xCode. C'est super mal foutu, et ça renvoit toujours un message pour nous dire que ce qu'on cherche est introuvable dans la doc (ah bon, NSString introuvable???)
> 
> Beaucoup de gens utilisent Cocoa Browser ou AppKiDo pour cette raison.



oui certes il me parle AppKiDo  ...

bon dans la doc je confirme new project bsd tools


----------

