Je viens de commencer à apprendre Objective-C et je suis bloqué sur un problème très simple. J'ai écrit un petit programme et j'essaie de le compiler via un terminal Mac en utilisant la commande suivante:
clang -framework Foundation main.m -o prog
Cela fonctionnait bien jusqu'à ce que j'écrive le code suivant dans main.m
Calculator *calculator = [[Calculator alloc]initWithExpression:expressionArray];
Il a commencé à me donner l'erreur suivante:
Symboles non définis pour l'architecture x86_64: "_OBJC_CLASS _ $ _ Calculator", référencé depuis: objc-class-ref dans main-a39d3a.o ld: symbole (s) non trouvé (s) pour l'architecture x86_64 clang: erreur: la commande de l'éditeur de liens a échoué avec le code de sortie 1 (utilisez -v pour voir l'invocation)
Comment dire au compilateur d'importer le fichier calculator.h alors que j'ai inclus la ligne suivante dans main.m:
#import "Calculator.h"
Réponses:
3 pour la réponse № 1Si vous avez un fichier "Calculator.m" dans vos sources, votre commande de compilation doit ressembler à
clang -framework Foundation Calculator.m main.m -o prog