www.mikrocontroller.net

Forum: PC-Programmierung Welchen C-Compiler?


Autor: Hase (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo! Wir fangen an der Uni jetzt mit C-Programmierung an. Unser Prof.
meinte, die benutzen da alle den GNU-C-Compiler. Leider finde ich den
jedoch nicht für Windows, überall lese ich nur von diesem
Cygwin-Unix-Emulator, aber so viel Umstand wollte ich eigentlich gar
nicht.

Was hat das damit auf sich, braucht man da tatsächlich dieses Cygwin?
Oder kennt ihr noch irgendwelche freien Alternativen zum
GNU-C-Compiler?


Gruß, Hase

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
mingw

Autor: Μαtthias W. (matthias) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

http://www.cygwin.com/ ist schonmal garnicht schlecht und du solltest
wirklich den Umgang mit Unix ein wenig lernen. Die Installation ist
auch nicht wirklich schwierig. Alternativ kannst du auch mit
http://www.mingw.org/ arbeiten. Das sind allerdings alles
Kommandozeilentools. Brauchst du was grafisches (für den Einsteiger
manchmal ganz geschickt das dann nicht zig Baustellen auf einmal gibt)
kannst du dir auch mal http://www.bloodshed.net/devcpp.html anschauen.
Eine eher M$ zentrierte Geschichte ist die Express Edition von Visual
C++. Die bekommst du kostenlos bei M$. Um portable Programme zu
schreiben wirst du da aber nicht um den Download des Platform-SDK
herumkommen und du wirst eine gehörige Portion Selbstbeherschung
benötigen.

Matthias

Autor: Hase (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, danke für die Antworten. Die grundlegenden Sachen kann ich ja
bei Unix/Linux (nen paar Konsolenbefehle, Kernel kompilieren etc...),
aber auf meinem Thinkpad ist das mit Linux so ne Sache, ich müsste erst
formatieren, die ganzen IBM Serviceprogramme/Servicepartition etc... neu
machen etc. Das ist mir immoment zu viel.

Aber dieses mingw.org klingt ganz interessant. Kann ich das in
irgendeiner Form in Programmers Notepad einbinden? Obwohl, dann kann
ich ja auch gleich BLoodsheed devcpp nehmen, hm?

Autor: Christoph __ (chris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
DevC++ soll nicht (mehr) so gut sein, hab ich mittlerweile von mehreren
(vertrauenswürdigen) Leuten gehört. Habs allerdings selbst noch nicht
überprüft.

Code::blocks sollte zu empfehlen sein:
http://www.codeblocks.org/
Das benutzt auch den MinGW-Compiler.

Autor: ToniT (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn Du Linux auf deinem ThinkPad nutzen willst, schau Dir einfach mal
coLinux an. Mit ca. 1Gig Platz auf der Platte bist Du dabei und
brauchst nix neu zu formatieren.

http://www.colinux.org/

Gruß

Autor: Μαtthias W. (matthias) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

ich meinte ja nicht das du ein Linux installieren sollst. Man kann auch
mit cygwin ganz gut das Programmiermodell von Unix kennenlernen.

Matthias

Autor: Sebastian W. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Du kannst auch mingw mit der GCC verwenden, unter eclipse. Das geht,
nur habe ich den debugger GDB dort nicht zu laufen gabracht. Weiss da
einer was?

das Projekt mit c++ und eclipse heisst CDT wenn ichs noch richtig
weiss.


Sebastian

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der GDB aus dem MinGW Paket ist in der OpenSource IDE Code::Blocks sehr
schön eingebunden.

Wer immer verschämt auf die grafische Debugoberfläche von VisualC++
oder Borland geschielt hat, sollte sich Code::Blocks mal ansehen.

Die Installation ist sehr einfach. Wenn der MinGW GCC Compiler (und
andere) schon installiert ist, findet Code::Blocks den bei der
Installation und bindet alles in die IDE ein.

Autor: Sebastian W. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Ich wollte es halt in Eclipse machen.

Meist ist die open source Doku etwas spartanisch und über das ganze web
verstreut. Hab dann irgendwo eine Anleitung mit screenshots,... gefunden
und dann ging das.

Aber zu GDB in eclipse habe ich noch nichts gefunden.

Eigentlicher Hintergrund ist das ich mit qt4 open source arbeiten
möchte, aber da makefiles brauche,... und da kam mir eclipse gerade
recht, das recht ausgereift scheint.

Habe im Studio mit qt334 während meinem Praktikum gearbeitet.

Sebastian

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
kostenloser c-compiler für windows:
http://www.delorie.com/djgpp/

zugehörige IDE:
http://www.rhide.com/

Okay, sieht spartanisch aus, ist es auch, aber zum Lernen vollkommen
ausreichend.

Autor: Bartli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
DJGPP ?
Also dann doch lieber mingw, ausser man will wirklich für DOS
kompilieren.

Autor: Suzanna (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
DJGPP ist schon etwas älter, das würd ich auch lieber lassen, wenn die
Zielplattform nicht wirklich nur DOS ist...

Autor: Weinga-Unity (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Noch ein Hinweis zu IDE.

Code::Blocks sieht zwar net aus, weiß aber nicht, wies da mit
Bibliotheken aussieht. Für DEVC++ gibts fertige Bibliotheken, die man
mit dem eingebauten Paket-Wizard (oder so) downloaden kann und es
installiert sich gleich alles was man so braucht (MYSQL, FLTK,
WXWidgets, SDL, ...)

Nimmt einige Hämmungen von Anfänger, wenns nicht gleich am Installieren
einer Bibliothek scheitert.

mfg W.K.

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Geschmackssache sagt der Affe und beisst in die Seife.
http://freeprogrammingresources.com/cppide.html

FLTK, WXWidgets und SDL müssten mit Code::Blocks gehen. MySQL müsste
jemand ein Template für schreiben. Ich kenne keine drei GUI Libraries
aus eigener Erfahrung. Ich will mich aber in eine GUI-Library
einarbeiten, die ich unter M$ Windows und Linux (X Windows) nutzen
kann.
http://freeprogrammingresources.com/guilib.html
http://www.libsdl.de/

Kannst du (oder ein anderer LeserIn) aus eigener Erfahrung einen Tipp
abgeben, mit welchem System man gut starten kann? Danke schon vorab!

Autor: Christoph __ (chris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein Anfänger sollte auf gar keinen Fall mit GUI-Bibliotheken wie
WxWidgets, Qt oder gtkmm beginnen. Solange man nicht eine solide
Grundlage besitzt, wird man an diesen Bibliotheken entweder verzweifeln
oder langfristig gesehen eher mäßigen bis schlechten Code schreiben, der
zu einem nicht geringen Teil aus copy&paste und vielen Foren stammt. Vom
Stil, den man sich dadurch aneignet, fang ich besser gar nicht erst an
(ich sag nur "C"-Präfix bei Klassen).

Eine solide Grundlage ist meiner Meinung nach sehr wichtig. Leider
verträgt sich das nur bedingt mit einer Sprache wie C++, bei der man
schon einiges wissen muss, um erste, sinnvolle Programme selbst
schreiben zu können. Ich würde daher zum Einstieg eher eine Sprache wie
Python empfehlen, die portabel und nicht überladen ist und in einigen
Punkten C und C++ um Längen schlägt, was Eleganz angeht.
Man sollte sich sowieso von der konkreten Programmiersprache lösen, die
immer nur Mittel zum Zweck darstellen sollte.

Aber wenn man, wie der OP, keine Wahl hat, sollte man sich trotzdem auf
jeden Fall eine aktuelle IDE holen. Veraltete Compiler setzen z.T. den
Standard nur mangelhaft um oder haben andere mehr oder weniger große
Nachteile, die man gerade als Anfänger dann beginnt für "richtig" zu
halten. Frei nach "worse is better":
http://www.jwz.org/doc/worse-is-better.html

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ack, und danke für den Link.

Autor: Mehmet Kendi (mkmk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hab' mir mal den Code::Blok heruntergeladen und eine
Console-Application zusammengebastelt. Zwar kann ich es fehlerfrei
compilieren, aber es erzeugt mir keine EXE-Datei.
Nach 15 Minuten suche nach der berühmten Click-Box hab' ich es
aufgegeben: kann mir bitte jemand helfen?

Autor: pittbull_nt@yahoo.com (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hier ist noch einer: http://www.heise.de/newsticker/meldung/68595
gerade sehr gut geeignet, wenn man für dos oder sogar os/halbe was
programmieren möchte

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Christoph

Python war ein guter Tipp. Innerhalb einer halben Stunde habe ich es
geschafft, ein Minidemo zu schreiben und das Velleman K8055D USB-IO
Board anzusprechen.

Ich finde die Sprache sehr elegant und "eingängig". Hier mein erstes
Skript (Stolz):

# -*- coding: cp1252 -*-
#
# K8055D.py
# v0.1 3.2.2006
#
# Demo für die Ansteuerung des Velleman K8055D USB-IO Boards
# mit Python und dem ctypes Modul
#
# Python 2.4:   http://www.python.org
# ctypes:       http://starship.python.net/crew/theller/ctypes/
#
# OS: nt (Windows98SE)
#
import time
from ctypes import *
K8055D = windll.k8055d
ret = K8055D.Version()
ret = K8055D.OpenDevice(0)
if ret == 0:
    print 'Ausgabe von 0 bis 15 auf den digitalen Ausgängen vom K8055D
USB-Board...'
    i = 0
    while i < 16:
          ret = K8055D.WriteAllDigital(i)
          time.sleep(1) # Sonst wird es zu schnell ;-)
          i = i+1
else:
    print 'K8055D USB-Board #0 nicht gefunden.'
ret = K8055D.CloseDevice()

Das macht Spaß!
Stefan

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.