compileren lukt niet

Status
Niet open voor verdere reacties.

Veens705

Gebruiker
Lid geworden
19 apr 2014
Berichten
34
Dag,

Ik ben wat aan het spelen met g++ in linux.
Ik heb wat zeer simpele code gemaakt met gedit:

#include <stdio.h>

main()
{
int eerste, tweede;
eerste = 0;
tweede = 27 /eerste;
printf("tweede = %d\n", tweede);
}
Ik weet dat dit een foutmelding gaat geven, maar daar is de oefening voor bedoeld.
Maar als ik dit via de terminal wil compileren met "gcc -o test1 test.ccp" krijg ik:

test.ccp: file not recognized: File format not recognized
collect2: ld returned 1 exit status

Wat doe ik fout?


alvast bedankt
 
Doe de volgorde eens andersom, dus:
gcc test.cpp -o test1

Werkt dat niet, probeer dan:
g++ test.cpp -o test1

Tijs.
 
Laatst bewerkt:
Hij geeft exact hetzelfde met "File format not recognized." Zowel g++ als gcc
Kan het dat gedit iets produceerd wat gcc niet kan lezen? Kan het me niet voorstellen, want dit is toch een simpele textfile...
 
Kijk en huivert:
screenshot.jpg
Ik snap er niets van. Dit zou toch moeten werken?
 
Kan je de inhoud van test.c eens laten zien? Op basis van de foutmelding lijkt het erop dat je test.c probeert te "includen" in test.c
 
Het bestand "test.ccp" dat in de eerste mail staat, heb ik hernoemd naar test.c, maar volgens mij heb ik inderdaad het include gedeelte later aangepast ten opzichte van de hier gemailde versie, dus dat zou kunnen. Ik zit nu op m'n werk en kan even niet kijken of veranderen en opnieuw proberen.
Waar staat dat "# include" trouwens voor? De rest van het programma begrijp ik wel, maar de start met "#include" is voor mij een toverspreuk. Het C-boek wat ik gebruik geeft daar ook geen verklaring voor.

Kan het ook zijn dat gedit geen geschikte editor is en dat ik bijvoorbeeld nano of pico moet gebruiken? (Ook vanavond maar eens proberen.)

Update: Het is gelukt. Ik heb nano als editor gebruikt, maar dat was niet nodig, bleek toen ik het nog een keer via gedit deed.
Oorspronkelijk zat 't 'm denk ik in de naam van het bestand dat gek genoeg wel door gedit als C-broncode werd herkent maar niet door g++.
Daarna zat het 'm inderdaad in de '#include'. Wat is dat eigenlijk? Is dat een 1 of ander gereedschapje wat je meecompileert net als met "uses" in turbo pascal?
Zo ja, wat kan daar nog meer staan en waar staat het allemaal voor? Misschien kom ik het wel in het C-boek tegen als ik verder ga.
 
Laatst bewerkt:
Het hoort in elk fatsoenlijk C(++)-boek te staan, maar #include is een instructie aan de preprocessor om de inhoud van het bestand dat achter #include staat op die plek in het bestand te plakken. Pas daarna gaat de compiler het bestand compileren.

Mocht het niet in je boek staan, op http://www.cplusplus.com/doc/tutorial/preprocessor/ kan je meer uitleg en andere instructies aan de preprocessor vinden.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan