Eclipse oder Visual Studio nutzen?
-
Hallo ihr,
ich bin Mathematikstudent und stehe vor der Entscheidung, ob ich meine Programmierprojekte mit Visual Studio oder Eclipse und MinGW erstellen möchte. Ich programmiere unter Windows 7 64-bit.
Wenn wir unsere Programmierprojekte abgeben, müssen die unter GCC für Linux fehlerfrei kompilierbar sein (so wurde uns das gesagt). Gibt es die Möglichkeit, dass ich mit Visual-Studio ein Programm schreibe, welches auch dort fehlerfrei kompiliert wird, sodass das Programm allerdings nicht unter Linux mit GCC fehlerfrei kompiliert werden kann?
Ich habe bis jetzt zum Programmieren MinGW und Eclipse genutzt, aber habe es nie geschafft, den Debugger zum Laufen zu bringen. Mittlerweile läuft Eclipse mit C gar nicht mehr bei mir und ich bin ehrlich gesagt etwas genervt von dem Programm.
Daher habe ich mich gefragt, ob ich evtl. mit Visual Studio programmieren kann und wollte daher folgende Fragen stellen:
-
Kann der oben beschriebene Fall (kompiliert unter Visual Studio, aber nicht unter Linux GCC) eintreten?
-
Würdet ihr allgemein zum Programmieren unter Windows eher zu Visual Studio oder Eclipse raten?
Ich danke schonmal für die Antworten,
plizzz
-
-
eclipse ist in der Tat etwas frickelig, gerade die gdb Integration unter Windows.
Falls du es noch nicht probiert hast, solltest du erstmal GDB 7.1.x sowie gcc 4.4.x ausprobieren, Anwendung kompiliert mit -ggdb und -O0 . Zumindest muckt dann bei Eclipse CDT beim Debuggen von single-thread-Anwendungen mit gdb nicht rum. Ansonsten mach es gleich richtig und nehme emacsVisual Studio kannst du natürlich auch gut nehmen - das funktioniert dann alles mit der Integration auf Anhieb. Abschließend würde ich zur Sicherheit aber auf jeden Fall nochmal mit gcc kompilieren.
-
Ist es denn vernünftig machbar, den Debugger unter Eclipse zum Laufen zu bringen? Ich habe jetzt hin und hergegoogelt und bekomme es nicht hin.
-
plizzz schrieb:
Ist es denn vernünftig machbar, den Debugger unter Eclipse zum Laufen zu bringen? Ich habe jetzt hin und hergegoogelt und bekomme es nicht hin.
Wie ich sagte, mit gdb 7.1 oder gdb 7.2 und dem neusten CDT auf jeden Fall. Wo liegt dein Problem?
-
Wenn der Code fehlerfrei unter GCC/Linux kompilieren und laufen soll, dann nimm am besten einen GCC unter Linux. Das etwas unter VS kompiliert aber unter dem GCC nicht ist ein üblicher Fall (andersrum auch). Der GCC legt zB den Standard strikter aus. GCC unter VS dürfte höchstens als hack funktionieren (zu VS6 Zeiten gab es da mal Wrapper). Aber dann funktioniert der VS Debugger eh nicht.
Also spare dir einfach den ganzen Ärger und nimm den GCC unter Linux. Wenn dir Eclipse als IDE Probleme bereitet, dann nimm eine andere IDE für den GCC. zB KDevelop, Code::Blocks, Qt Creater, Emacs etc.
-
Ich benutze als Notlinux unter Windows gerne Cygwin, aber einige Dinge funktionieren nicht zu meiner Befriedigung, erfahrungsgemäß ist ein richtiges Unix/Linux die bessere Entwicklungsplattform. Unter Windows arbeite ich fast nur mit debug oder fasmw und notepad++. notepad++ kann z.B scriptcodes von Winform nach Unixformat konvertieren, was recht praktisch ist. Cygwin hat nach Wunsch im Großpacket (fast 4GB) nahezu alle möglichen Linux Proggis an Board, man kann also alle möglichen Unixtools unter Windows ausprobieren. Den Editor Vi im Windowsfenster auszuprobieren ist möglicherweise für Einsteiger etwas angenehmer als in Linux Konsole only...;) Aber die neuen Linuxe haben wirklich tolle Guis mit an Board. Es ist auch spannend, sich verschiedene Linuxe anzuschauen.
Es gibt ja einige Linuxe, die laufen recht stabil auf meinem Notebook und lassen sich gut auf USBSticks installieren. Mein Hauptlinux (Sidux 64) läd auch viel schneller als Windows. C/C++-Programmierung ist hier supereinfach, die Hardware/portsteuerung (Stichwort "IN/OUT) viel unkomplizierter als bei Windows und das 64bit System stabiler und leistungsfähiger. Und Assembler? Assembler ist ein ganz normaler Bestandteil des Entwicklungssystems und nicht irgendwie ein vergessenes oder unterdrücktes Stiefkind.
-
C/C++? Kenn ich net.
-
C/C++? Kenn ich net.
Na dein C halt wenn du nach unten schaust. C++ ist der Grosse zu der Mitte.
Acht Stück hat der normale Mensch und C++ zweimal.
-
Ok, also es scheint mit den oben genannten Versionen (alte Version von MinGW gehabt - shame on me) zu funktionieren. Vielen Dank schonmal an dieser Stelle. Ich hänge nun gleich nochmal eine Frage dran: Ich habe bis jetzt immer anfängermäßig debugged, d.h. mir mit printf Ausgaben gegeben und so versucht, fehler zu finden. Ich habe keine Ahnung, was ich mit so einem Debugger alles machen kann und bin gerade etwas überwältigt davon.
Frage: Kennt jemand ein gutes Tutorial zu Funktionen und Nutzung des Debuggers (Debugger allgemein oder speziell über den GDB mit Eclipse - beides super)?
Vielen Dank schonmal,
plizzz
-
Ich hänge hier einfach mal einen Post dran, da es eine neue Frage ist: Ich bin jetzt so weit, dass ich meine Programme durch den Debugger laufen lassen kann. Ich habe allerdings Probleme mit Programmen, in deren Code "scanf" vorkommt. An dieser Stelle geht es nicht weiter, da er wohl auf eine Eingabe wartet. Wie kann ich ihm diese geben?