ld: 1 symbole en double pour l'architecture x86_64
Je suis très très novice en C et C++ programmation, et ont très peu d'expérience dans la Programmation d'applications (mon arrière-plan est Basé sur le Web), Mais je vais essayer d'expérimenter avec C /C++ et Xcode... Donc, j'ai trouvé ce code (et beaucoup de semblables variations en ligne):
#include <stdio.h>
int main()
{
printf ("Test");
return 0;
}
Encore quand je viens de le compiler dans Xcode j'obtiens l'erreur suivante:
> duplicate symbol _main in:
> /Users/thomas/Library/Developer/Xcode/DerivedData/test-etqojvxbxhxjqeggdzkbfufvbeza/Build/Intermediates/test.build/Debug/test.build/Objects-normal/x86_64/first.o
> /Users/thomas/Library/Developer/Xcode/DerivedData/test-etqojvxbxhxjqeggdzkbfufvbeza/Build/Intermediates/test.build/Debug/test.build/Objects-normal/x86_64/main.o
> ld: 1 duplicate symbol for architecture x86_64 clang: error: linker
> command failed with exit code 1 (use -v to see invocation)
Peut-être que Xcode est pas une bonne chose pour moi de l'utiliser comme un débutant? Si quelqu'un peut recommander un meilleur compilateur, ce serait très bien aussi!
source d'informationauteur Thomas Fearn | 2014-09-19
Vous devez vous connecter pour publier un commentaire.
Lorsque vous créez un nouveau projet dans Xcode, il vous donne automatiquement un fichier de démarrage avec
main()
. Si vous avez créé un nouveau fichier, commefirst.c
puis collé votre code de test, vous serez en définissantmain()
deux fois, et d'obtenir cette erreur.Vous devez soit supprimer le fichier (comme
main.c
oumain.m
) que Xcode fournit dans votre nouveau projet, ou couper et coller votre exemple de code dans ce fichier, au lieu d'en créer un nouveau.