Ga naar inhoud

linker error in C (niet ++)


anoniem

Aanbevolen berichten

ik heb een programma met 1 main.C file, 1 func.C file(waar al mijn functies/procedures in staan) en een prog.H file, waar alle prototypes in staan. Nu open ik (lees: maak ik een nieuwe) project file en laat deze compileren. Hierop hangt mijn programma vast, en krijg ik de volgende foutmelding: Linker error: Undefined symbol in _initaliseren(mijn eerste functie) in module main.C Deze foutmelding krijg ik precies even vaak als het aantal functies wat ik heb in mijn programma. Het meest vreemde hieraan is dat als ik PRECIES DEZELFDE bestanden op school compileer, het programma (ook hetzelfde) absoluut geen fouten geeft en mijn programma vlekkeloos loopt. wie kan mij zeggen wat er fout is?? alain dacier
Link naar reactie
[quote="20010196dacier"]ik heb een programma met 1 main.C file, 1 func.C file(waar al mijn functies/procedures in staan) en een prog.H file, waar alle prototypes in staan. Nu open ik (lees: maak ik een nieuwe) project file en laat deze compileren. Hierop hangt mijn programma vast, en krijg ik de volgende foutmelding: Linker error: Undefined symbol in _initaliseren(mijn eerste functie) in module main.C Deze foutmelding krijg ik precies even vaak als het aantal functies wat ik heb in mijn programma. Het meest vreemde hieraan is dat als ik PRECIES DEZELFDE bestanden op school compileer, het programma (ook hetzelfde) absoluut geen fouten geeft en mijn programma vlekkeloos loopt. wie kan mij zeggen wat er fout is?? alain dacier[/quote] hoe probeer je te compileren, welke compilers heb je tot je beschikking, en wat voor een functies heb je? ook, maak je gebruik van objectfiles of compile je gelijk naar een executable?
Link naar reactie
ja, das een goede vraag, ik gebruik het programma Borland C(++) for DOS (nogal oud dus), ik heb geen flauw id wat voor compiler ik gebruik(hoe kom ik daarachter?). Ik doe voor te compileren ctrl+F9, maar ook met de "make" optie in het menu krijg ik dezelfde foutmelding. wat voor soort functies ik gebruik...ik begrijp de vraag niet helemaal, maar hier heb je een voorbeeld: void bordleegmaken(tBord *pBord, int Aantal){ int i,j; for(i=0;i<Aantal;++i) for(j=0;j<Aantal;++j) (*pBord).Bord[i][j] = '-'; } Volgens mij maak ik objectfiles, want deze staan in de map waar ook mijn C source staat, en er is geen exe te vinden.
Link naar reactie
¦Linking PRJOPDR2.EXE ¦ Linker Error: Undefined symbol _fichedraaien in module MAIN.C ¦ Linker Error: Undefined symbol _bordvol in module MAIN.C ¦ Linker Error: Undefined symbol _bordtonen in module MAIN.C ¦ Linker Error: Undefined symbol _bordopstellen in module MAIN.C ¦ Linker Error: Undefined symbol _bordleegmaken in module MAIN.C dit is de foutmelding, meer staat er niet bij, de namen fichedraaien, bordvol enz. zijn de namen van de procedures ps. het is toch blijkbaar toch een exe wat ik ga maken en geen obj...ik snap het niet meer
Link naar reactie
Nou, hier komtie dan: Ik heb op school nagevraagd, en mijn leraar zei het volgende: ik moest allereerst volledig opnieuw beginnen, nieuw project, opnieuw alles instellen enz. daarna alles afzonderlijk compileren, daarna de optie "make" daarna "link" en daarna "build all" en voila, idd het programma loopt als een trein, heel vreemd, maar mijn leraar zei dat het waarschijnlijk ligt aan objectfiles die met een verkeerde datum werken(ik begrijp het niet, maar hij zou wel eens gelijk kunnen hebben) in ieder geval doet alles het nu!!! bedankt voor de moeite alain dacier
Link naar reactie

Om een reactie te plaatsen, moet je eerst inloggen

Gast
Reageer op dit topic

×   Geplakt als verrijkte tekst.   Herstel opmaak

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

  • Populaire leden

    Er is nog niemand die deze week reputatie heeft ontvangen.

  • Leden

    Geen leden om te tonen

×
×
  • Nieuwe aanmaken...