Linux C++ Compiler

Brauche ich einen C++ Compiler für Linux. Dachte zuerst an GCC. Doch jetzt kotzt es mich ehrlich gesagt schon wieder an. Bei configure braucht es schon wieder GMP und MPFR. MPFR hatte ich als Paket. GMP musste ich herunterladen. Das hab ich gemacht, und jetzt bringt das GMP auch schon wieder Fehler:

Code:
checking for struct pst_processor.psp_iticksperclktick... no
checking for suitable m4... configure: error: No usable m4 in $PATH or /usr/5bin (see config.log for reasons).

Gibt es einen Compiler unter Linux, der vllt etwas angenehmer zu installieren ist?
Oder einen anderen Weg wieder tausend Problemwege zurück zu verfolgen und zu beheben?

Ich benutze Debian 2.6.24er Kernel auf amd64

Danke für jede Hilfe
 
Ist das jetzt ein vollständiger Compiler? Wenn ja versteh ich ihn nicht, wenn ich ihn mit dem Befehl m4 öffne. Oder ist das der Ersatz für das GMP?
 
ich hab keine ahnung, aber scheinbar braucht das was du da machst m4, und m4 ist in den repositories ;)
 
Ist gcc, eig. nur eine Konsolenanwendung, oder ist da ein Art GUI dabei? Ist das nicht so etwas wie z.b. Visual Basic? Wenn nicht, gibt es so etwas?
 
gcc ist ein ganz normaler kompilier wie es sie auch unter windows gibt, denn auch da sind die (meisten?) kompilier nur konsolenprogramme.

gcc file.c

das c++ pendant dazu ist g++
 
jetzt hab ich von dieser Seite: http://www.informit.de/books/c++21/data/start.htm

diese beiden Formen getestet:
1.

1: #include <iostream.h>
2:
3: int main()
4: {
5: cout << "Hello World!\n";
6: return 0;
7: }


2.

1: #include <iostream.h>
2: int main(); // die meisten Compiler kommen ohne
3: // diese Zeile aus
4: int main() {
5: {
6: cout << "Hello World!\n";
7: return 0;
8: }


Keine der beiden funktioniert bei mir, immer Fehler

edit: den Editor benutze ich auch gerade
 
Original von gugugsGMP musste ich herunterladen. Das hab ich gemacht, und jetzt bringt das GMP auch schon wieder Fehler

also wenn du mit GMP die gnu multiprecision library meinst, dann würde ich nicht versuchen, die zu kompilieren, denn das soll äußerst schwer zu bewerksteligen sein (laut herstellerseite)

Und bei mir (Ubuntu) gibts die GMPlib in dem paket libgmp3 bzw. libgmp3-dev (zum kompilieren)
 
Original von gugugs
jetzt hab ich von dieser Seite: http://www.informit.de/books/c++21/data/start.htm

diese beiden Formen getestet:
1.

1: #include <iostream.h>
2:
3: int main()
4: {
5: cout << "Hello World!\n";
6: return 0;
7: }

#include <iostream.h> <--- ich lass da das .h weg, ka ob das wichtig ist ;)
int main()
{
cout << "Hello World!\n";
return 0;
}

ausserdem ist das c++, du brauchst also einen c++ kompilier, g++ zb.
 
Original von gugugs
jetzt hab ich von dieser Seite: http://www.informit.de/books/c++21/data/start.htm

diese beiden Formen getestet:
1.

1: #include <iostream.h>
2:
3: int main()
4: {
5: cout << "Hello World!\n";
6: return 0;
7: }


2.

1: #include <iostream.h>
2: int main(); // die meisten Compiler kommen ohne
3: // diese Zeile aus
4: int main() {
5: {
6: cout << "Hello World!\n";
7: return 0;
8: }


Keine der beiden funktioniert bei mir, immer Fehler

edit: den Editor benutze ich auch gerade

Bei c++ nutzt du die Endung .h nicht mehr. Ansonsten greifst du auf die C-Bibliotheken zu. Desweiteren wäre es hilfreich, wenn du deine Fehlermeldungen einfach mal postest.
Beim zweiten Beispiel hast du einen Syntax-Fehler in Zeile 5. Das einleitende hast du in Zeile 4 schon genannt.
 
Dann würde ich mal sagen, das ist ein ziemlich schlechtes Tutorial, denn so steht es dort drin, deshalb, hab ich noch ein anderes gute gefunden, am Anfang klappte auch alles, aber bei diesem Beispiel:

http://tutorial.schornboeck.net/eingabe.htm

also:

#include<iostream>
using namespace std;

int main()
{
int zahl1;
int zahl2;

cout<<"Bitte eine Zahl eingeben\n";
cin>>zahl1;
cout<<"Bitte noch eine Zahl eingeben\n";
cin>>zahl2;
cout<<"Zahl 2: "<<zahl2<<"\n";
cout<<"Zahl 1: "<<zahl1<<"\n";
}

kompiliert er zwar ohne Probleme, aber wenn ich dann die erste Zahl eingebe Enter drücke, die 2. Zahl eingebe und dann Enter drücke, schliest das Programm einfach, ohne mir den Wert aufzuzählen, an was liegt das schon wieder?

das mit dem Linux c++ compiler, lass ich erst mal links liegen, habe mir jetzt das dev-c++ für Windows geholt, ist eig. sehr gut.

Das ganze c++ gehört zwar jetzt nicht mehr ins Linux Thema, aber wäre trotzdem schön, wenn jemmand noch eine Antwort auf das Problem wüsste
 
du musst dem programm für windows eine anweisung zum warten geben, denn wenn ein windows-konsolen-programm zuende ist, dann geht auch die konsole zu ;)

bei c war das getch() (kein plan welcher header dafür benötigt wird).
 
Ich würd dir btw empfehlen, nicht bei jedem Fehler hier zu fragen, sondern auch mal selbst zu schauen und dein Problem selbst zu lösen. Denn nur so lernst du auch die C++ Seiten kennen, lernst, wie man die C++ Referenz nutzt. Sonst artet der Thread noch in "Wie lerne ich C++ in 5 Schritten" aus und du hast letztendlich garnichts davon.
 
@gugugs:
damit du nicht nur durch wildes Tutorial-Code-rumprobieren lauffähigen Code findest, sondern auch den Hintergrund verstehst:

der erste von dir gepostete Code KONNTE nicht funktionieren, weil kein Namespace deklariert war.

Lösung:
entweder - wie in letzterem Beispiel - den Namespace angeben
Code:
using namespace std;
oder den Namespace explizit den Befehlen voran stellen:
Code:
std::cout<<"Hallo gugugs, was gugst du?!";
 
Zurück
Oben