Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: GentooForum.de. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

1

08.03.2006, 07:13

Einstieg: C++ unter Gentoo

Hi :)

Ich möchte mit der C++ Programmierung unter Gentoo beginnen. Ich habe bereits mehrjährige Erfahrungen mit Java und PHP, und unter Windows mit VB und Delphi. Es ist also nicht so, dass ich mit Variablen, Schleifen und OOP nichts anfangen könnte. Es geht mir auch nicht um die Sprachstruktur von C++, da habe ich mir bereits Fachbücher zu besorgt, sondern um den reinen Einstieg in Linux bzw. Gentoo.

Was für ein IDE würdet ihr empfehlen? Wo kann ich Tutorials zu der Einrichtung und den Besonderheiten der Programmierung unter Linux finden? Was ist bei der GUI Entwicklung generell zu empfehlen (QT/GTK) bzw. für den Anfang leichter zu erlernen? (Die Programme sollen auch auf Windows portiert werden)

Danke im Voraus!

2

08.03.2006, 12:25

moin :)

ich schwör auf emacs. das ding kann man schon als IDE bezeichnen. für alle sprachen. was ich damit hauptsächlich mach is:
- c/c++
- python
- xml (hauptsächlich docbook)
- makefiles

das teil ist aber auch sehr spartanisch, fast nur mit tastenkombinationen zu bedienen (nicht so krass wie vi), hat aber auch ne recht gute einführung dabei.
was ich besonders an emacs schätze ist, das es keine IDE spezifischen arbeitsbereich- oder projektdateien anlegt und ich alles selber machen muss, dadurch aber auch die kontrolle über alles hab.

wenn du gerne clickst: eclipse sei auch für c++ gut (ich hab's nur mit java/ant eingesetzt), aber mir macht das teil zu viel von alleine im hintergrund.

was du benutzt ist geschmackssache. willst du back to the roots: vi oder emacs :)

zu bunten, komfortablen click-dingern kann ich nichts sagen :P
"When using vi the screen of your terminal acts as a window into the file which you are editing. Changes which you make to the file are reflected in what you see."
Bill Joy 1978

3

08.03.2006, 12:41

klingt gut, danke für die tipps :)

ich möchte nicht wirklich eins von diesen bunten klick-dinger haben - wenn ich sowas wollte wäre ich nicht zu linux gewechselt ;)

4

08.03.2006, 13:09

is zwar etwas bunter komm aber super damit zu recht .... kdevelop

5

08.03.2006, 13:30

hmm, versuch ich auf jeden fall mal.. danke :)

habt ihr noch allgemeine tipps oder tuts für den programmieranfang in c++ unter linux?

6

08.03.2006, 18:57

naja. falls du ohne MFC programmiert hast, ändert sich nicht viel. die winapi fällt wohl auch weg :P als fenstererzeuger kannst du zum beispiel qt nehmen. wenn du die traditionelleren umgebungen wie vi oder emacs nutzt, solltest du dich auch noch in makefiles einarbeiten, was so oder so keine schlechte idee ist. mit makefiles legst du die abhängigkeiten und reihenfolgen (,...) beim kompilieren fest (so wie ant unter java). das würde die projektdateien ersetzten.

EDIT
qt läuft auch unter windows, ..., falls du betriebssystem unabhängig programmieren willst. das gilt auch für makefiles.

zur dokumentation nutze ich docbook. ist zwar recht aufwändig zum erstellen (xml) aber daraus lassen sich alle erdenklichen formate (html, pdf, rtf, ... ) aus den gleichen quellen erzeugen.

auch lustig an make ist, dass du die makefiles so schreiben kannst, dass du per option angegeben kannst, was gemacht werden soll. zum beispiel (das geht nicht automatisch, ist aber möglich):

make clean # alle per make erzeugten files löschen
make doc # nur die doku erstellen

oder von gentoo her bekannt:

make oldconfig
make menuconfig
make && make modules_install
"When using vi the screen of your terminal acts as a window into the file which you are editing. Changes which you make to the file are reflected in what you see."
Bill Joy 1978

Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von »rob« (08.03.2006, 19:08)


7

08.03.2006, 19:41

Das was Rob zu qt geschrieben hat, gilt übrigens genauso für GTK. GTK bringt auch eine Bibliothek (glib) mit, die man unabhängig von der GUI-Programmierung einsetzen kann. Dort gibt es z.B. Funktionen für den Dateizugriff. Die damit geschriebenen Programme sind sollten sich auf Systemen, für die GTK verfügbar übersetzen lassen.

Bitte jetzt keine Diskussion GTK vs. qt. Beide haben ihre Vor- und Nachteile.

Gruß

Stareagle

Edit: Ich wollte natürlich qt und nicht kde schreiben

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »stareagle« (09.03.2006, 08:29)


8

08.03.2006, 19:48

naja. ich hab mit qt auch nicht kde gemeint, auch wenn der drauf basiert. der ist mir zu überladen. ich hab openbox. auch darüber sollte man nicht streiten. ist geschmackssache :rolleyes: :P
"When using vi the screen of your terminal acts as a window into the file which you are editing. Changes which you make to the file are reflected in what you see."
Bill Joy 1978

9

08.03.2006, 22:25

Ein Unterschied zwischen QT und GTK ist sicherlich, daß QT eine C++ API hat, und GTK eine C API. Es gibt natürlich für beide Bindings für diverse andere Sprachen. gtkmm z.B. stellt eine C++ API für GTK bereit, PyQt eine Python API für Qt.

Zum Thema Platformunabhängigkeit: Erst ab Qt4 gibt es eine GPL Version von Qt auch für Windows, Qt3 für Windows muss man noch kaufen. Für MacOS gibt es Qt auch.
GTK scheint es auch für alle drei Systeme zu geben, das leite ich von der Existenz von z.B. Gimp oder Audacity für Mac und Win ab.

Zum Thema Einstieg: Qt kommt mit einer sehr ausführlichen Doku, einem ausführlichen Tutorial und vielen Beispielprogrammen zu unterschiedlichen Themenbereichen.
Mit Qt kommen der QtDesigner (ein GUI-Builder, mit dem Du die komplette Oberfläche grafisch designen kannst, wenn Du sie nicht hardcoden willst), QtLinguist (zum Verwalten der Sprachen/Übersetzungen Deines Programms) und qmake (Erstellt die makefiles für dich).

Mit Linuxspezifika kommst Du so gut wie nicht in Berührung, das erledigt alles Qt für Dich, wie es sich für ein plattformübergreifendes Toolkit gehört. Generell musst Du Dich mit Linux-Besonderheiten erst auseinandersetzen, wenn Du in die Systemprogrammierung einsteigen willst, dann brauchst Du aber auch kein Toolkit.
Zu GTK kann ich nichts sagen, da ich es nicht benutze (zum programmieren), schätze aber mal, daß es auch gut ist.

Als IDE verwende ich Kdevelop und bin sehr damit zufrieden. Es bietet Unterstützung für viele Projekttypen, vom einfachen c/c++ hello world auf der Konsole bis zum kompletten Qt oder GTK Gui Programm. Die verschieden QT-Tools (Designer usw.) als auch Debugger, Valgrind, div. Shell Tools usw. integriert Kdevelop sehr gut in seine Oberfläche. Es hat auch einen sehr leistungfähigen Dokumentations-Browser - gerade zum Lernen sehr praktisch, wenn man im Quelltext einfach auf einen Klassen- oder Methodennamen klicken kann und die Beschreibung kommt. Muss man allerdings erst kurz Einrichten, Gentoo packt ja alle Dokus unter /usr/doc/, was nicht den Voreinstellungen entspricht.

Wie gesagt, ich arbeite hauptsächlich mit QT/Kdevelop, daher kann ich auch nur dazu was sagen.
__
Rud

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Rudwardt« (08.03.2006, 22:27)


10

27.03.2006, 17:13

Kann die nur Eclipse an Herz legen.....


Benutze ich bisher für alles was ich mache

PHP,HTML,CSS,C++,SQL etc...

^^Leider ist der Einstieg etwas kompliziert aber später ist dann alles super.....

^^Und Eclipse CDT (will unter gentoo nicht ganz so wie es soll) aber man bekommt es hin
!!! LOL !!! Glaub nicht an Dich, glaub an Drogen !!! LOL !!!

[Gentoo Stage 1]
AMD Athlon XP 2600+
768MB DDR 333
suspend2-sources-2.6.16-r1
g++-3.4.5-r1 / glibc-2.3.5-r2
xorg-6.8.2-r6 / gnome-2.12.3

11

27.03.2006, 20:18

Also eclipse (mit eclipse-cdt) kann ich auch nur empfehlen! Dann wäre da für C++ auch noch anjuta ganz nett, kann aber meiner Meinung nach nicht so ganz mit eclipse mithalten.

Bye,
TheCurse
AMD Sempron 2200+
768 MB RAM
gentoo-sources-2.6.16-r4 + reiser4 patch

My Projects:
Gentoo Configurations Auto Cleaner

12

30.04.2008, 14:33

Für dokus kann ich noch doxygen empfehlen, is zwar erst relativ merkwürdig beim einarbeiten, aber nach ne kleinen zeit gewöhnt man sich an die vorzüge...
"...klingt komisch, ist aber so!"