2009-09-14 11 views
2

Donc, je suis un nouvel étudiant CS, sur un Mac, et j'apprends le C++ pour l'un de mes cours. Et j'ai une question stupide sur la façon de compiler mon programme C++ super basique. J'ai installé Xcode, et je regarde dans la documentation pour essayer de comprendre comment l'utiliser (et je soupçonne fortement qu'il est extrêmement surpuissant pour ce que je fais en ce moment) et finit par aller dans Terminal et aller "gcc [nom de fichier]". Et j'ai un écran plein de texte qui commence par "Symboles non définis", et continue à essayer de référencer les choses, donc je me demande si je n'ai pas branché quelque chose quelque part, surtout quand je suis réellement dans Xcode avec un programme C++ ouvert, la plupart des éléments de menu sont grisés.Utiliser GCC à travers Xcode pour compiler des programmes de base

Donc. En termes vraiment très basiques. Qu'est-ce que j'ai manqué de faire et comment puis-je le réparer? Y a-t-il un guide de base pour Xcode? La plupart de la documentation est destinée à de vrais développeurs, et je manque totalement une grande partie de ce qui est supposé.

+0

Si vous ne voyez pas, je vais commenter ici aussi: On dirait que la solution de Martin est correcte et que vous êtes tout simplement pas réellement en cours d'exécution le programme. Voir mon commentaire là-bas si vous ne l'avez pas déjà fait. – Chuck

+0

Merci, j'ai enfin vu votre commentaire et répondu ci-dessous. – klreeher

Répondre

1

Si XCode est installé, tout est configuré correctement.

Si vous avez tapé gcc sur la ligne de commande, vous avez appelé le compilateur 'C' (pas le compilateur C++). Habituellement, cela n'a pas d'importance car GCC compense en regardant l'extension du fichier. Mais ce qui importe est qu'il n'invoque pas l'éditeur de liens avec les bons indicateurs C++.

Ce que vous devez faire (à partir de la ligne de commande) est l'utilisation g ++

g++ <fileName>.cpp 

Par défaut, le fichier de sortie est a.out et placé dans le même répertoire.
g ++ a un drapeau pour spécifier un autre nom de sortie -o

g++ -o <outputName> <fileName>.cpp 
+0

Cela expliquerait beaucoup ... mais quand je l'ai essayé, Terminal me donne juste une nouvelle ligne. Pas d'erreur, rien. (C'est un programme qui demande plusieurs entrées, et devrait renvoyer une sortie, et ceci j'ai testé sur un autre ordinateur.) – klreeher

+1

@KLR: Vous vous rendez compte que GCC/G ++ va juste compiler le programme, non? Il ne fonctionne pas le programme pour vous. Si vous n'avez pas fourni de nom de sortie, il appellera le programme compilé "a.out". – Chuck

+0

Eh bien. Je me sens bête maintenant. D'accord, le programme compilé sera-t-il dans le même répertoire que le fichier original? Et comment fournir un nom de sortie? – klreeher

Questions connexes