Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1380 connectés 

  FORUM HardWare.fr
  Programmation
  C

  Probleme de main

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Probleme de main

n°1270020
StrAbZ
Posté le 19-12-2005 à 15:56:41  profilanswer
 

Bonjour a tous !
 
Voila mon probleme, j'ai un programme qui compile et fonction nickel sous NetBSD, et je me suis donc dis que d'avoir une version Linux, qui marche serai pas mal aussi !
 
Bref, j'ai fait les modif necessaire, et maintenant lors du linkage j'ai un beau message d'erreur, et je ne vois pas comment le resoudre.
Le voici :

Code :
  1. /usr/lib/gcc/i486-linux-gnu/4.0.2/../../../../lib/crt1.o: In function `_start':
  2. ../sysdeps/i386/elf/start.S:115: undefined reference to `main'
  3. collect2: ld returned 1 exit status


 
Donc si vous voyez d'ou cela peut venir je suis preneur, surtout que cela marche sans probleme sous NetBSD...
 
Merci d'avance !

mood
Publicité
Posté le 19-12-2005 à 15:56:41  profilanswer
 

n°1270024
Elmoricq
Modérateur
Posté le 19-12-2005 à 16:00:47  profilanswer
 

Ca vient de la ligne 67 de ton fichier source. [:daria]

n°1270036
theshockwa​ve
I work at a firm named Koslow
Posté le 19-12-2005 à 16:13:04  profilanswer
 

jeu de main, jeu de vilain [:pingouino]
 
indice : au moment de l'édition des liens, il ne trouve pas le symbole main ...

n°1270042
StrAbZ
Posté le 19-12-2005 à 16:16:41  profilanswer
 

ce qui voudrai dire que je n'ai pas de main... or non j'ai un main, sinon j'aurai déjà eu la meme erreur sous NetBSD ce qui n'est pas le cas.
 
Le probleme c'est que je ne vois absolument pas d'ou viens ce main manquant...

n°1270046
theshockwa​ve
I work at a firm named Koslow
Posté le 19-12-2005 à 16:19:08  profilanswer
 

et bien, ne sachant pas quel est le programme et n'ayant rien d'autre qu'une maigre erreur à nous mettre sous la dent, tu comprendras bien que nous non plus

n°1270054
StrAbZ
Posté le 19-12-2005 à 16:22:56  profilanswer
 

je sais bien :D
 
mais c'est plutot un gros programme je vais pas tout poster :D
 
bref dans mon fichier main.c il y a plusieurs fonctions, dont la fonction main que voici :
 

Code :
  1. int        main(int argc, char *argv[])
  2. {
  3.    if (!is_valid_usage(argc, argv))
  4.         mu_usage();
  5.    else
  6.      my_parse(argc, argv)
  7.    return 0;
  8. }


 
voila mon main, en fait je ne sais pas non plus quel bout de code donner.. y'a trop de chose..
 
est-ce que cela peut venir d'un fichier autre que celui de mon programme, car le message d'erreur de precise pas que cela vient d'un de mes fichier... mais dans ce cas que faire...


Message édité par StrAbZ le 19-12-2005 à 16:28:44
n°1270061
theshockwa​ve
I work at a firm named Koslow
Posté le 19-12-2005 à 16:29:21  profilanswer
 

tu utilises un makefile pour ta compilation ?
 
parce que c'est peut-être simplement ton fichier objet contenant ton main qui n'est pas lié avec le reste

n°1270066
StrAbZ
Posté le 19-12-2005 à 16:32:21  profilanswer
 

j'utilise bien un makefile, que voici :
 

Code :
  1. include ../Makefile.rules
  2. CFLAGS = $(IPATH)
  3. LDFLAGS = $(LPATH)
  4. SRC =   my_parse.c      \
  5.         recalage.c      \
  6.         temp.c          \
  7.         temp2.c         \
  8.         print_fn.c      \
  9. #       print_imgs.c    \
  10.         main.c
  11. NAME = ../recalage
  12. OBJ = $(SRC:.c=.o)
  13. INCL =  my_parse.h \
  14.         recalage.h
  15. LIBSTATIC = matrix_`uname -s`
  16. IPATH = -I. -I..
  17. LPATH = -L. -L..# `sdl-config --libs`
  18. STRIP = /usr/bin/strip
  19. RM = /bin/rm -f
  20. CC_COM = $(CC) $(OBJ) $(TARGET_FLAGS) $(LDFLAGS) -l$(LIBSTATIC) -lm -o $(NAME)
  21. all: $(NAME)
  22. $(NAME): $(SRC) $(INCL) $(OBJ)
  23.         cd matrix && make
  24.         $(CC_COM)
  25. debug: $(SRC) $(INCL) $(OBJ)
  26.         cd matrix && make
  27.         $(CC_COM) -g
  28.         gdb $(NAME)
  29. clean:
  30.         cd matrix && make clean
  31.         -$(RM) $(OBJ)
  32.         -$(RM) *~ \#* *core
  33. distclean: clean
  34.         -$(RM) $(NAME)
  35.         -$(RM) *.a
  36. .c.o:
  37.         $(CC) $(TARGET_FLAGS) $(CFLAGS) -c $< -g


 
un peu gros, enfin y'a pire ^^

n°1270132
theshockwa​ve
I work at a firm named Koslow
Posté le 19-12-2005 à 17:41:42  profilanswer
 

tu as essayé de passer le main.c sur la ligne du dessus, dans ton makefile ? j'aurais peur que ton commentaire te pourrisse la vie [:pingouino]
 
(ceci dit, j'suis loins d'être expert en makefiles :o)

Message cité 1 fois
Message édité par theshockwave le 19-12-2005 à 17:43:04
n°1270180
theshockwa​ve
I work at a firm named Koslow
Posté le 19-12-2005 à 18:57:31  profilanswer
 

autre tentative : tu n'aurais pas des conditions (#ifdef ...) sur le système masquant ton main lorsque tu compiles sous un autre OS que BSD ? (sait-on jamais ...)
 
le problème peut venir d'un peu partout, hein :/


Message édité par theshockwave le 19-12-2005 à 18:58:17
mood
Publicité
Posté le 19-12-2005 à 18:57:31  profilanswer
 

n°1270183
StrAbZ
Posté le 19-12-2005 à 19:05:53  profilanswer
 

theshockwave a écrit :

tu as essayé de passer le main.c sur la ligne du dessus, dans ton makefile ? j'aurais peur que ton commentaire te pourrisse la vie [:pingouino]
 
(ceci dit, j'suis loins d'être expert en makefiles :o)


 
Et bien pourtant tu l'es.... je n'aurai jamais pensé que le commentaire bousille le reste, cela compile et link sans probleme maintenant !
 
Merci beaucoup !!!

n°1270184
samo1986
Free to ride the way you want.
Posté le 19-12-2005 à 19:07:39  profilanswer
 

C'est un problème de buffer.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  Probleme de main

 

Sujets relatifs
Problème execution VB Script en ASPProblème d'écriture dans un fichier
VB 6 / Probleme EOF[SQL] un coup de main pour rouler mon join?
Probleme HTML Aide !!!probleme requete REGEXP
PHP-SQL Problème avec REGEXP[Lex Yacc] problème de Main()
[Applet JAVA] Problème de thread qui ne rend pas la main[php] probleme de conversion :) un petit coup de main serait sympa
Plus de sujets relatifs à : Probleme de main


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR