PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Programmieren mit C/C++



Seiten : [1] 2

The_Punisher
23.09.08, 17:20
Ich habe ein Problem,
da ich in eine Schule gehe wo ich mit der Entwicklungsumgebung Bloodshed DevC++ arbeite, brauch ich es auch unbedingt auf Ubuntu 8.04.
Mein Problem is einfach nur, wo ich die Libraries und die ganzen Standardcompiler herbekomme, wie ich sie installier, welche IDE die beste wäre und ja usw.

Bitte dringendst um Hilfe
p.s.: einfach Link reinkopiern bitte unterlassen, da ich Linux erst seit ein paar Wochen hab kenn ich mich noch gar net aus, also bitte alles Schritt für Schritt erklären

VIELEN DANK

lef
23.09.08, 17:47
Hallo,

also wenn du ubuntu 8.04 installiert hast, hast du ja schon mal die Hälfte geschafft. Da ist normalerweise schon der gcc-4.2 dabei und mit
cpp hello_world.ccp kannst du auch schon in der Shell kompilieren.

Am besten siehst du dir mal Eclipse IDE for C/C++ Developers unter http://www.eclipse.org/downloads/ an das hat alles dabei was du brauchst um dich durchzuklicken.

Zum Einrichten von Eclipse unter Ubuntu sollte es auch ausreichend Tutorials in Google zu finden geben.



p.s.: einfach Link reinkopiern bitte unterlassen, da ich Linux erst seit ein paar Wochen hab kenn ich mich noch gar net aus, also bitte alles Schritt für Schritt erklären
Das ist das Problem mit Linux, es kommt nicht her und sagt dir wie du alles tun mußt... hey, aber deswegen benutzen wir es ja...

Aber auf die richtigen Fragen bekommt man auch die richtigen Antworten.

Gruß lef

Iluminat23
23.09.08, 18:16
naja, als die beste IDE gibt es nicht. meine meinung ist fang nicht mit eienr IDE an, kompiliere deine programme von hand. bei dir werden es wohl kaum programme werden wo mehr als 4-6 dateien zusammen gelinkt werden müssen.

wenn du unbedingt eine ide willst gibt es viel auswahl:
- kdevelop (basiert auf kde)
- anjuta (eher die gnome richtung)
- eclipse (eine monster in java)
- codeblocks (recht unabhängig afaik in wx-widgets geschrieben)

kannst ja mal bei ubuntu suchen welche es mit bringt und eines das dir zusagt installieren. vermutlich wirt die ide dann auch die anderen abhängigkeiten wie header und libs mit installieren.

sonst benötigst du (kein plan wie die genau bei ubuntu heißen):
- libc-dev
- gcc / g++

das sollte schon fast reichen

gruß iluminat23

The_Punisher
23.09.08, 18:37
Ich saug mir mal Eclipse runter, aber hab ich das richtig verstanden? Ich brauch nur Eclipse, dann schreib ich meine Programme darin und kann ganz normal mit der IDE kompilieren, also nicht so umständlich via Terminal? oder? Denn sowas such ich ja....
Bei Dev C++ kann man zB einstellen, dass der Compiler alle Warnings anzeigen soll...
(Bei Compileroptionen den Text reinschreiben -Wall)
Deswegen brauch ich ne IDE, denn das is übersichtlicher als ein dummes Terminalfenster ;)

cane
23.09.08, 18:45
Schau dir das mal an:

http://www.eclipse.org/cdt/
http://www.google.de/search?q=eclipse+C%2B%2B&ie=utf-8&oe=utf-8&aq=t&rls=com.ubuntu:de:unofficial&client=firefox-a

mfg
cane

The_Punisher
23.09.08, 19:22
Ok vielen Dank für die bisherige Hilfe, aber jetzt hab ich genau das Problem, welches ich vermutet hab

mein Programm:

#include<stdio.h>
#include<conio.h>

int main(){
printf("TEST");
getch();
return 0;
}

Eclipse sowie auch die anderen IDEs bzw Texteditor erkennt conio.h nicht... also die lib
was da los?
und wenn ich trotzdem auf run klicke schreibt Eclipse das: Launch failed. Binary not found.

bitte um Hilfe danke

m.o.o.
23.09.08, 19:38
conio.h ist keine Library sondern ein Header. Schmeiß aus deinem Programm einfach den nicht ANSI-C-Code raus bzw. ersetze die conio.h-spezifischen Funktionen durch ANSI- bzw. Linuxfunktion (hier z.B. getchar() statt getch()).

The_Punisher
24.09.08, 06:31
(ja ich mein eh header) aber ich brauch getch, mit getchar les ich ein zeichen ein.
außerdem ich hab da ne "hello_world" vorgabe und er schreibt das gleiche raus Launch failed. Binary not found.

The_Punisher
24.09.08, 06:39
Hier Hello_World in Ansistyle:

#include <iostream>
using namespace std;

int main() {
cout << "!!!Hello World!!!" << endl; // prints !!!Hello World!!!
return 0;
}

gleicher Fehler!

marce
24.09.08, 08:14
bitte exakte Vorgehensweisen und exakte Fehlermeldungen - im Wortlaut.

Und für Code-Beispiele und Ausgaben am besten die [code]-Tags des Forums verwenden, dann bleibt das alles besser lesbar.

ThorstenHirsch
24.09.08, 08:49
Wenn Du Dich für Eclipse entschieden hast, machst Du am besten erst mal ein Eclipse-Tutorial. Das kann man auf der Welcome-Seite in Eclipse direkt aufrufen.

pferdefreund
24.09.08, 09:06
... und im Web auf www.gnu.org gibts ein hervorragendes C-Tutorial - habs selbst
durchgearbeitet und komm prima zurecht. conio ist Windows und nicht Linux !

undefined
24.09.08, 09:30
Sorry aber beim zweiten Posting habe ich mir schon gedacht das so etwas raus kommt. Wenn er in der Schule C lernt sind die Lehrer meist Win... C verseucht, das sieht man schon an conio.h. Und einem Anfänger eine IDE aufs Auge drücken halte ich persönlich für total falsch hier tut es jeder Editor unter Linux. C Programme werden mit dem C-Compiler aufgerufen und nicht wie oben vorgeschlagen mit CPP.


#include <stdio.h>
#include <stdlib.h>

#ifdef __BORLANDC__ && __MSDOS__
#include <conio.h>
#endif

int main()
{
printf("TEST\n");

#ifdef __BORLANDC__ && __MSDOS__
getch();
#endif

return EXIT_SUCCESS;
}

übsersetzen mit

gcc -D_GNU_SOURCE -Wall -W -Wextra test.c -o test
Das Programm in der Konsole mit ./test aufrufen

therealmisterx
24.09.08, 09:42
http://tugll.tugraz.at/52291/weblog/4009.html

The_Punisher
24.09.08, 11:47
hmkay....
erstmal vielen dank an therealmixterx der link is echt prima...
daran wirds höchstwahrscheinlich auch liegen!

marce
24.09.08, 11:48
was sägt denn ein gcc an der Konsole?

Iluminat23
24.09.08, 20:48
also ich durfte mitlerweile schon einigen leuten programmieren c/c++ beibringen. und meine erfahrung ist: lass die ****** IDE weg. die macht bei anfängern nur probleme. was ist so schwer an 'gcc -o output.file source.c' da bekommt man dann auch nur fehler die auch was mit dem kompilieren (bzw. linken) zu tun haben und nicht allen kram was die IDE versaut.

ich verstehe nicht warum anfänger meinen, dass es mit eienr IDE leichter sei. man hat nur mehr fehlerquellen. entschuldigt, dass ich mich so aufrege.

mfg iluminat23

Krischi
24.09.08, 22:01
Aus dem gleichen Grund, warum viele für die Erstellung der ersten einseitigen und statischen Homepage ihres Goldfisches gleich zu einem CMS und einem wer weiss wie aufwendigem Editor greifen:
endlose Möglichkeiten der automatischen Vervollständigung und einzelne Klicks, wo man sonst drei Tasten drücken müsste. Man glaubt, es so leichter zu haben und Fehler auszuschließen.
Dabei ist das genaue Gegenteil der Fall und wenn die Fehler dann auftreten, weiss man nicht, wie man sie beseitigt.

cane
24.09.08, 22:12
Mailclients sollte man auch erst nutzen wenn man einige Monate telnet für die Mailkommunikation genutzt hat :ugly:

mfg
cane

Krischi
24.09.08, 22:58
Mailclients sollte man auch erst nutzen wenn man einige Monate telnet für die Mailkommunikation genutzt hat :ugly:Boshaft könnte man jetzt sagen: Ja, bei einigen Menschen wäre das angebracht :D

Na ganz so ist es ja nun nicht. IDEs sind ja eine nützliche und praktische Sache.
Aber man muss zugeben, dass das gerade am Anfang leicht ins groteske abgleiten kann.
Da hat man dann vier Zeilen "Hallo Welt" und 30 Zeilen automatisch eingefügten Kram, das kompilieren klappt nicht und man sieht im Wald der Zeilen nicht den Baum, dem das Semikolon fehlt.
Ist vielleicht überspitzt, aber ich denke, Du weisst, was ich meine.

Und ich sehe es bei mir selbst gerade. Ich erstelle das erste mal eine Website.
Das mache ich mit Bluefish und finde die vielen Knöpfe ganz toll.
Aber ich muss mich ernsthaft fragen, wie viel ich davon tatsächlich selbst auf die Reihe bekäme, wenns die Knöpfe nicht gäbe. Das gibt mir zu denken :D
Würde ich das ganze dann jetzt auch noch per WYSIWYG erledigen, würde ich mich letztenendes gar nicht mehr zurecht finden und womöglich gar nicht wissen, an welcher Stelle ich nach welchem Fehler zu suchen habe.

Ist zwar keine Programmierung und der Vergleich hinkt daher. Aber meine (zugegeben begrenzte) Erfahrung diesbezüglich sagt mir, dass es mir beim Programmieren auch nicht anders ginge.
Und ich kann mir nicht vorstellen, dass ich der einzige bin, dem es so geht.
Wie groß dieses Problem sein kann und ob es überhaupt auftritt, hängt von jedem selbst ab. Aber dass es auftreten kann, steht ausser Frage.

marce
25.09.08, 06:07
IDEs haben unbestritten ihre Vorteile - wenn man weiß, was man tut. Sie nehmen einem viel Arbeit ab (automatisches Erstellen von notwendigen Funktionen, Syntax-Vervollständigung, Projekt-Verwaltung, ...) - für das "Programmieren lernen" sind sie meiner Meinung auch eher nachteilig - weil sie auch das Erlernen von Hintergrundwissen erschweren bzw. verhindern - weil eben das Notwendige gleich vorgegeben wird und damit das woher, wieso, wozu "übersprungen" wird...

The_Punisher
25.09.08, 06:35
IDEs sind super, ohne IDE würde mir das am Arsch gehn <--Punkt 1
Punkt 2 ich bin kein Anfänger
Punkt 3 mir würde das am Arsch gehn das dauernd in ner Console zu kompilieren
Punkt 4 debuggen is mit ner IDE auch besser
Punkt 5 Ne IDE is übersichtlicher!

so und ich lad jt mal die Pakete von dem einen da runter dann sollte er die Header erkennen!
geb euch dann bescheid

undefined
25.09.08, 12:45
IDEs sind super, ohne IDE würde mir das am Arsch gehn <--Punkt 1
Punkt 2 ich bin kein Anfänger
Punkt 3 mir würde das am Arsch gehn das dauernd in ner Console zu kompilieren
Punkt 4 debuggen is mit ner IDE auch besser
Punkt 5 Ne IDE is übersichtlicher!

so und ich lad jt mal die Pakete von dem einen da runter dann sollte er die Header erkennen!
geb euch dann bescheid
Da kannst du soviel kraft ausdrücke verwenden wie du möchtest.
Sorry aber - du hast keine Ahnung also lass es lieber.
zu 2: Dann ist dir sicherlich auch bekannt wie man Fehlermeldungen beschreibt.
zu 3: Kaum zu glauben - aber es gibt Leute die sind damit schneller ;-)
zu 4: Aha - der Witz ist gut - selten so gelacht.
zu 5: Nein - Weil sie Anfängern Grundwissen unterschlägt.

Alex_K
26.09.08, 08:34
da ich in eine Schule gehe wo ich mit der Entwicklungsumgebung Bloodshed DevC++ arbeite

In dem Fall würde ich den zuständigen Lehrer mal fragen warum man auf IDE setzt, dessen Entwicklung vor Jahren in der Beta-Phase stecken geblieben ist.


Mein Problem is einfach nur, wo ich die Libraries und die ganzen Standardcompiler herbekomme, wie ich sie installier, welche IDE die beste wäre und ja usw.

Wie andere schon schrieben: die ganzen Tools und Libs sind bei Linux schon mit dabei. Ob/Welche IDE ist vor allem Geschmackssache.

Wenn du DevC++ kennst, und damit auch in der Schule arbeiten musst, dann würde ich Codebocks empfehlen.
Das ist DevC++ sowohl auf technischer Ebenen als auch vom Interface sehr ähnlich, wird aktiv weiter entwickelt, und ist Cross-Platform - läuft also auf Windows genau so wie unter Linux.
Vielleicht kannst du es sogar deinem Lehrer vorführen, und ihn damit bewegen auf "lebende" Software umzusteigen. ;)

Ivo
28.09.08, 11:12
Ich mache meine Projekte ganz einfach:

Erstellen einer neuen Datei mit mkfile (erstellt Datei und schriebt GPL Header, Name usw oben rein). Dann schreibe ich mit ein Script zum compilieren und dann gehts los mit gvim oder scite. Ganz simpel und schnell, keine Projektdateien usw... ein sauberes Verzeichniss nach folgender Struktur:

Projektname
-> src
-> bin
-> conf

Ivo

DerMagerquark
28.09.08, 13:56
so und ich lad jt mal die Pakete von dem einen da runter dann sollte er die Header erkennen!
geb euch dann bescheid
Ich finde dein Verhalten etwas unverschämt. Lies doch, was dir geantwortet wird. Du pickst dir nur das heraus, was du hören willst.
Man hat hier doch jetzt schon mehrfach geschrieben, dass Header wie conio.h kein teil der C-Sprache sind.
Versuch dich doch einfach an vernünftigem ANSI-C.

EDIT: Als ich den ersten Post gelesen hab, dachte ich noch im Geiste: Beste IDE? Versuch mal vi. :D

The_Punisher
01.10.08, 18:07
sagmal checkst du das nicht????
ich muss das so programmiern wie in der schule vorgegeben Oo
1:1
ich mach das ja nicht als Hobby
ich hoffe das hast du jt geschnallt

The_Punisher
01.10.08, 18:12
Da kannst du soviel kraft ausdrücke verwenden wie du möchtest.
Sorry aber - du hast keine Ahnung also lass es lieber.
zu 2: Dann ist dir sicherlich auch bekannt wie man Fehlermeldungen beschreibt.
zu 3: Kaum zu glauben - aber es gibt Leute die sind damit schneller ;-)
zu 4: Aha - der Witz ist gut - selten so gelacht.
zu 5: Nein - Weil sie Anfängern Grundwissen unterschlägt.


dann sag mal wovon ich keine Ahnung hab???
2tens... was willst mit Fehlermeldungen beschreiben???
3tens... ich nich, ich drück auf kompilieren und fertig....
4tens stimmt doch
5tens möglicherweise wissen, wie man mit ner shell kompiliert aber wer braucht das schon als windowsuser : )
höchstens dann wenn ich kommandozeilenparameter übergeben will, dann is mit ner shell leichter

m.o.o.
01.10.08, 18:22
sagmal checkst du das nicht????
ich muss das so programmiern wie in der schule vorgegeben Oo
1:1
ich mach das ja nicht als Hobby
ich hoffe das hast du jt geschnallt

Wenn du es 1:1 wie in der Schule machen musst, dann nimm doch einfach Bloodsheed unter Windows, so wie es die Vorgabe ist. Hoffentlich hast du das jetzt auch geschnallt.

The_Punisher
03.10.08, 18:21
haha der war gut... hab ich schon probiert du schnalle...
erstens bekomm ich nen anzeigefehler
und 2tens kompiliert er nich mal