riesen problem unter Linux
-
Ich erhalte diese Fehlermeldung.
cd '/home/hell/function/debug' && WANT_AUTOCONF_2_5="1" WANT_AUTOMAKE_1_6="1" gmake -k gmake all-recursive Making all in src linking pagerank (g++) /usr/lib/gcc/i586-suse-linux/4.2.1/../../../crt1.o: In function `_start': (.text+0x18): undefined reference to `main' collect2: ld returned 1 exit status gmake[2]: *** [function] Error 1 gmake[2]: Target `all' not remade because of errors. gmake[2]: Nothing to be done for `all-am'. gmake[1]: *** [all-recursive] Error 1 gmake: *** [all] Error 2#include <stdio.h> #include <string.h> #include <stdlib.h> #include <iostream> #include <sstream> using namespace std; int main(int argc, char *argv[]) { printf("Hallo Fehler"); retunr 1; }wer hat eine Zauberkugel oder schon mal solch ein Problem bewältigt?
undefined reference to `main'
die main ist vorhanden .....
-
wie wäre es mit return anstatt retunr?
-
Leider ist der Fehler immer noch vorhanden.
...
-
Geht's denn nur mit g++ (ohne MAKEFILE)?
-
Hi,
wäre es nicht besser du würdest den Code so schreiben:
#include <iostream> using namespace std; int main() // Die Sachen in der Klammer einfach weglassen { cout << "Hallo Fehler\n"; // Ausgabe mit cout ist meineserachtens // viel leichter als printf(); // \n steht für Neue Zeile return 0; // du kannst auch return 1; verwenden }Gruß
AchtmalAcht
-
Hallo 64 (kleiner scherz am rande)
über die Parameter können Programmdaten mit übergeben werden.
Es muss irgendwie an g++ oder etwas Anderem liegen. der Code funktioniert so...
vielleicht sollte ich g++ neu installieren?
-
linuxprobs schrieb:
...
#include <stdio.h> #include <string.h> #include <stdlib.h> #include <iostream> #include <sstream> using namespace std; int main(int argc, char *argv[]) { printf("Hallo Fehler"); retunr 1; }...
undefined reference to `main'
...Mehrere Anmerkung:
a) Warum includierst du Header die du nicht verwendest?b) Zumindestens unter C++ sind in deinen Code bereits Fehler, die angegebenen Header sind teilweise falsch:
<string.h> ==> <cstring>
<stdio.h> ==> <cstdio>
<stdlib.h> ==> <cstdlib>c) Ich nehme an das der Fehler (arbeite nicht mit g++) wenn an einer fehlenden Sourceangabe beim Aufruf liegen könnte. Meine Glaskugel ist aber leider schon seit 30 Jahren in der Reperatur...
cu André
-
Mach doch probeweise mal:
g++ test.cpp -o testFunktioniert das? Ich kenn gmake nicht, braucht aber doch vermutlich ein MAKEFILE, oder? Zeig das doch mal!
Hast du die libc auf'm neuesten Stand? gcc?