Dans la fonction "_start': init.c:(.texte+0x30): undefined reference to `main'
Je suis en train de travailler sur un projet C, avec près de 30 fichiers source (.c). Je suis en train de construire ce projet sur un 32 bits micro-contrôleur(j'.MX515) en cours d'exécution sur Ubuntu à l'aide des outils GNU.
La phase de compilation est terminée avec succès, cependant, lorsque le processus de liaison commence, j'obtiens cette erreur (Pour plein d'erreur à la fin de la quesiton):
In function `_start': init.c:(.text+0x30): undefined reference to `main'
J'ai un main()
fonction qui fait un simple printf()
.
Mon Makefile ligne pour les liens, ça ressemble à ça.
final: $(OBJDIR)/main.o $(OBJDIR)/TchClaKnn_BuildKdtreeInt.o $(OBJDIR)/TchClaKnn_FreeKdtreeInt.o.... (Go upto 30 files like this)
@echo ".Linking"
$(CC) $(LFLAGS) -o $(OBJDIR)/main.o $(OBJDIR)/TchClaKnn_BuildKdtreeInt.o $(OBJDIR)/TchClaKnn_FreeKdtreeInt.o..... (Go upto 30 files like this)
Aider!!!
Ce qui concerne
Vikram
Complète erreur de couplage
/usr/lib/gcc/arm-linux-gnueabi/4.3.3/../../../crt1.o: In function `_start':
init.c:(.text+0x30): undefined reference to `main'
collect2: ld returned 1 exit status
make[1]: *** [final] Error 1
make[1]: Leaving directory `/home/ubuntu/Documents/Project/IMX_Project_v1'
make: *** [all] Error 2
Est main() dans le main.c (compilé à la main.o) ?
OriginalL'auteur HaggarTheHorrible | 2010-05-03
Vous devez vous connecter pour publier un commentaire.
final dépend principal.o (et un tas d'autres), mais, votre makefile est de prendre tous les "autres" et leur affichage dans les principales.o (c'est ce que-o dans la plupart des compilateurs)
modifier votre ligne lien :
-o final $(OBJDIR)/main.o
Vous êtes les bienvenus, c'est pourquoi un autre regard presque toujours constate le problème tout de suite - ils ne savent pas ce à 'sauter' 😉
OriginalL'auteur KevinDTimm
Le linker ne trouve pas le code objet de la source qui les a main() définie dans la. Probablement pas obtenir compilé. Vérifier que, quel que soit le 30 fichiers qui a en main() il est compilé .OBJ.
OriginalL'auteur RdM