Hallo Leute. Ich wollte meine Programmierfähigkeiten wieder auffrischen (Jahre lang nicht gemeldet). Damals hab ich in der Uni noch mit Visual Studio programmiert. Das war c++11... Nun hab ich mich für Eclipse mit GCC zum proggen entschieden... Ich hab allerdings Probleme mit dem Debuggen. Das Launching funktioniert bei dem alten Projekt nicht. Hallo World läuft wunderbar. Also der Compiler sitzt drin! Wenn ich starten will dann passiert nichts. Also Ein Configuration -> c/c++ Application -> ja und dann kann ich bei 'Project' schon nichts "Briesen" denn das ist komplett leer! Vielen Dank!
Du kannst ein neues Projekt aufmachen und die Dateien per Drag&Drop ins leere Projekt einziehen. Auf der anderen Seite gibts VisualStudio als Community Version kostenlos, gibt also keinen Grund zu wechseln.
nicht"Gast" schrieb: > Du kannst ein neues Projekt aufmachen und die Dateien per > Drag&Drop ins > leere Projekt einziehen. > > Auf der anderen Seite gibts VisualStudio als Community Version > kostenlos, gibt also keinen Grund zu wechseln. Ja, richtig. Ich möchte allerdings nicht unbedingt Microsoftabhängig sein. Noch benutze ich zwar Windows, gedenke aber auf Linux umzusteigen.
Dann nimm gcc/Eclipse für neue Projekte, und debugge dein altes Projekt in Visual Studio. Wenn das erweitert werden soll, ist jetzt der Zeitpunkt gekommen, das alte Projekt auf die gcc-toolchain umzuschreiben. Nutzt das allerdings Micorsoft-spzifischen Kleinkram wie MFC o.ä.,solltes du das mit Eclipse nochmal überdenken. Oliver
Error in final launch sequence: Failed to execute MI command: -file-exec-and-symbols "D:/Studium/Informatik I/Exception-Handling/Exception-Handling/Exc-Main.cpp" Error message from debugger back end: "D:/Studium/Informatik I/Exception-Handling/Exception-Handling/Exc-Main.cpp": not in executable format: file format not recognized Hallo nochmal. Ich bekomme jetzt diesen Fehlercode... Weiß jemand Rat?
Oliver S. schrieb: > Dann nimm gcc/Eclipse für neue Projekte, und debugge dein altes > Projekt > in Visual Studio. > > Wenn das erweitert werden soll, ist jetzt der Zeitpunkt gekommen, das > alte Projekt auf die gcc-toolchain umzuschreiben. Nutzt das allerdings > Micorsoft-spzifischen Kleinkram wie MFC o.ä.,solltes du das mit Eclipse > nochmal überdenken. > > Oliver Nein. Es ist eine einfache Konsolenanwendung.
Dingens schrieb: > Error message from debugger back end: > "D:/Studium/Informatik > I/Exception-Handling/Exception-Handling/Exc-Main.cpp": not in executable > format: file format not recognized mit einem Quelltext kann der Debugger nix anfangen, in der Launch Config muss schon das executable eingetragen werden.
Eclipse erstellt die launch configuration doch automatisch. Im Projektexplorer den debug-Ordner öffnen, auf das exe da drin rechtsklicken, und "debug as ..." auswählen. Funktioniert das nicht, gibt es ein Problem mit der toolchain-Installation. Oliver
:
Bearbeitet durch User
Oliver S. schrieb: > Eclipse erstellt die launch configuration doch automatisch. > > Im Projektexplorer den debug-Ordner öffnen, auf das exe da drin > rechtsklicken, und "debug as ..." auswählen. > > Funktioniert das nicht, gibt es ein Problem mit der > toolchain-Installation. > > Oliver Neu erstellte Beispielprogramme wie "Hello World" funktionieren super. Wenn ich das Alte Projekt importiere wie hier erklärt: https://rsarte.hcldoc.com/help/index.jsp?topic=%2Forg.eclipse.cdt.doc.user%2Fgetting_started%2Fcdt_w_debug.htm Dann wird bei mir (im Gegensatz zur Anleitung) allerdings keine .exe oder makefile erstellt. Keine Ahnung...
Was genau verstehst du unter „Projekt importieren“ ? Beschriebe mal, wie du das gemacht hast. Oliver
Das Projekt hab ich über Oliver S. schrieb: > Was genau verstehst du unter „Projekt importieren“ ? > > Beschriebe mal, wie du das gemacht hast. > > Oliver Ich hab's jetzt so gemacht, dass ich ein hallo world Project gestartet habe und die .cpp Datei durch meine cpp + headder ersetzt habe. Das funktioniert. Nur unterstützt Eclipse GCC leider nicht die Funktionen strlen und strcpy. (Ja string und cstring hab ich inkludiert. Hat nichts genützt) Außerdem funktioniert sprintf_s nicht... Aber ich kann jetzt debuggen. Um oben genanntes zu lösen hatte ich noch keine Zeit. Leider bin ich nicht Zuhause und kann keinen code Posten.
Dingens schrieb: > Nur unterstützt Eclipse GCC leider nicht die Funktionen strlen und strcpy. > (Ja string und cstring hab ich inkludiert. Hat nichts genützt) Selbstverständlich verfügt der GCC, oder besser gesagt: die C-Standardbibliothek über diese Funktionen. Was ist denn die Fehlermeldung?
Dingens schrieb: > Ja, richtig. Ich möchte allerdings nicht unbedingt Microsoftabhängig > sein. Noch benutze ich zwar Windows, gedenke aber auf Linux umzusteigen. Nur um das klarzustellen. Das Argument Microsoftabhängigkeit stimmt. Der Punkt VS Studio Code läuft nicht unter Linux dagegen nicht. https://code.visualstudio.com/docs/setup/linux
Mark B. schrieb: > Dingens schrieb: >> Nur unterstützt Eclipse GCC leider nicht die Funktionen strlen und strcpy. >> (Ja string und cstring hab ich inkludiert. Hat nichts genützt) > > Selbstverständlich verfügt der GCC, oder besser gesagt: die > C-Standardbibliothek über diese Funktionen. > > Was ist denn die Fehlermeldung? Siehe Bild.
Dingens schrieb: > Mark B. schrieb: >> Dingens schrieb: >>> Nur unterstützt Eclipse GCC leider nicht die Funktionen strlen und strcpy. >>> (Ja string und cstring hab ich inkludiert. Hat nichts genützt) >> >> Selbstverständlich verfügt der GCC, oder besser gesagt: die >> C-Standardbibliothek über diese Funktionen. >> >> Was ist denn die Fehlermeldung? > > Siehe Bild. Hast du die Fehlermeldung gelesen?
mh schrieb: > Dingens schrieb: >> Mark B. schrieb: >>> Dingens schrieb: >>>> Nur unterstützt Eclipse GCC leider nicht die Funktionen strlen und strcpy. >>>> (Ja string und cstring hab ich inkludiert. Hat nichts genützt) >>> >>> Selbstverständlich verfügt der GCC, oder besser gesagt: die >>> C-Standardbibliothek über diese Funktionen. >>> >>> Was ist denn die Fehlermeldung? >> >> Siehe Bild. > > Hast du die Fehlermeldung gelesen? Uff. Danke für die riesen große Hilfe! Nein, Natürlich nicht. Du kannst dir ja gerne die Doku zur Funktion durchlesen und mich dann nochmal fragen.
Dingens schrieb: > mh schrieb: >> Hast du die Fehlermeldung gelesen? > > Uff. Danke für die riesen große Hilfe! Nein, Natürlich nicht. Gern geschehen! Du solltes das allerdings dringend nachholen. > Du kannst dir ja gerne die Doku zur Funktion durchlesen und mich dann > nochmal fragen. Ich sehe nicht so ganz den Sinn. Aber wenn du unbedingt willst. Hast du die Fehlermeldung gelesen?
Dingens schrieb: > Mark B. schrieb: >> Dingens schrieb: >>> Nur unterstützt Eclipse GCC leider nicht die Funktionen strlen und strcpy. >>> (Ja string und cstring hab ich inkludiert. Hat nichts genützt) >> >> Selbstverständlich verfügt der GCC, oder besser gesagt: die >> C-Standardbibliothek über diese Funktionen. >> >> Was ist denn die Fehlermeldung? > > Siehe Bild. Das Programm Funktioniert jetzt... Die Lösung: Löschen der Fehlermeldung... WTF, also das es tatsächlich ein so sonderbares IDE-Problem ist, hätte ich niemals gedacht... ich bin schockiert und weiß gar nicht ob ich bei Eclipse bleiben soll.
Dingens schrieb: > Das Programm Funktioniert jetzt... Die Lösung: Löschen der > Fehlermeldung... WTF Ich hoffe, du hast das fehlende Argument ergänzt.
mh schrieb: > Dingens schrieb: > Das Programm Funktioniert jetzt... Die Lösung: Löschen der > Fehlermeldung... WTF > > Ich hoffe, du hast das fehlende Argument ergänzt. Ich empfehle dir die Doku. Da fehlt kein Argument.
Dingens schrieb: > Ich empfehle dir die Doku. Da fehlt kein Argument. Ernsthaft? Ich bin mir relativ sicher, dass ich bis 3 zählen kann und dein Compiler stimmt mir zu.
mh schrieb: > Dingens schrieb: > Ich empfehle dir die Doku. Da fehlt kein Argument. > > Ernsthaft? Ich bin mir relativ sicher, dass ich bis 3 zählen kann und > dein Compiler stimmt mir zu. Nur braucht die Funktion nicht zwangsläufig drei Argumente, deshalb sollte man in die Doku gucken. Aber hey du bist sicher zu schlau dafür, denn du kannst bis 3. zählen.
Dingens schrieb: > Nur braucht die Funktion nicht zwangsläufig drei Argumente, Meines Wissens ist das im Standard nicht so. Hat da gcc eine Spezialversion?
Marc schrieb: > Dingens schrieb: >> Nur braucht die Funktion nicht zwangsläufig drei Argumente, > > Meines Wissens ist das im Standard nicht so. > Hat da gcc eine Spezialversion? Der Standard ist da ziemlich eindeutig (siehe http://eel.is/c++draft/cstring.syn). Und gcc hält sich ziemlich sicher dran.
mh schrieb: > Marc schrieb: > Dingens schrieb: > Nur braucht die Funktion nicht zwangsläufig drei Argumente, > > Meines Wissens ist das im Standard nicht so. > Hat da gcc eine Spezialversion? > > Der Standard ist da ziemlich eindeutig (siehe > http://eel.is/c++draft/cstring.syn). Und gcc hält sich ziemlich sicher > dran. Und nun?
@Dingens Das ist interresant, welche gcc Version und welche Settings nutzt du? Ich versuche es gerade nachzuvollziehen.
mh schrieb: > Dingens schrieb: > Und nun? > > Gute Frage! Hast du etwas dazu gelernt? Immer. Und du?
Oh Mann, Jungs habt ihr's jetzt bald? Nochmal meine Frage: Mein gcc meckert, wenn ich keine 3 Parameter nutze. Kann sein dass Du eine überladene strncpy() nutzt? Ich finde bei gcc keine Version, in der der dritte Parameter von strncpy optional ist.
Marc schrieb: > Oh Mann, Jungs habt ihr's jetzt bald? > > Nochmal meine Frage: Mein gcc meckert, wenn ich keine 3 Parameter nutze. > Kann sein dass Du eine überladene strncpy() nutzt? > > Ich finde bei gcc keine Version, in der der dritte Parameter von strncpy > optional ist. Hallo. Nein. Ich nutze strcpy ohne n! Aber das war nicht das Problem. Ich hatte genauso Fehlermeldungen bis ich diese mittels Rechtsklick -> deleted gelöscht habe! Ich wollte den mh nur etwas ärgern, weil er so arrogant ist und die Frage nicht richtig gelesen hat. Anfangs hatte ich erwähnt, dass ich strcpy ohne n! Nutze. Es war etwas schlampig von mir den Screenshot mit strncpy zu verwenden. Der Fehler war aber identisch. :)
Dingens schrieb: > mh schrieb: >> Dingens schrieb: >> Und nun? >> >> Gute Frage! Hast du etwas dazu gelernt? > > Immer. Und du? Nicht über C++. Mir ist die Funktion strncpy schon seit ANSI C bekannt. Marc schrieb: > Oh Mann, Jungs habt ihr's jetzt bald? > > Nochmal meine Frage: > Mein gcc meckert, wenn ich keine 3 Parameter nutze. > Kann sein dass Du eine überladene strncpy() nutzt? Das würde undefined behavior auslösen. > Ich finde bei gcc keine Version, in der der dritte > Parameter von strncpy optional ist. Warum sollte gcc das tun? Dafür gibts strcpy?!
Also Sorry, aber dieses Gehabe war absolut unnötig. Du schreibst nur dass strcpy nicht geht und im Screenshot nutzt du strncpy. Und dazu die Fehlermeldung. Du schreibst nicht, dass du DANACH wieder strcpy nutzt. Dieses Gegockeln hat micht jetzt ne Stunde gekostet und ich wollte nur helfen/verstehen. Das was Ihr hier tut hat das Forum nicht verdient!
Marc schrieb: > Also Sorry, aber dieses Gehabe war absolut unnötig. > > Du schreibst nur dass strcpy nicht geht und im Screenshot nutzt du > strncpy. Und dazu die Fehlermeldung. > Du schreibst nicht, dass du DANACH wieder strcpy nutzt. > > Dieses Gegockeln hat micht jetzt ne Stunde gekostet und ich wollte nur > helfen/verstehen. Das was Ihr hier tut hat das Forum nicht verdient! Dafür entschuldige ich mich bei dir.
Aber da ihr ja versiert seid. Ist das mit dem Löschen des Fehlers bekannt? Ich nutze die aktuelle Version.
Bin inzwischen umgestiegen auf VS Code. Hatte an anderer Stelle häufig Eclipse Probleme.
mh schrieb: >> Kann sein dass Du eine überladene strncpy() nutzt? > Das würde undefined behavior auslösen. Nein, probiers aus, es geht: // Selten dämlicher Code, aber unter C++ geht's char *strncpy(char *dest, const char *src) { return strncpy(dest,src,100); } Compiliert mit gcc in C++11, wie oben beschrieben. >> Ich finde bei gcc keine Version, in der der dritte >> Parameter von strncpy optional ist. > Warum sollte gcc das tun? Dafür gibts strcpy? Nicht's für ungut, aber deine Art rhetorische Fragen zu stellen, helfen nicht immer. Besondern wenn der gleiche Charakter antwortet... BTW: GCC tut einige Dinge die nicht mit dem Standard konform sind (wenn man es will). Schönen Abend.
Marc schrieb: > Dieses Gegockeln hat micht jetzt ne Stunde gekostet und ich wollte nur > helfen/verstehen. Das was Ihr hier tut hat das Forum nicht verdient! Es tut mir Leid, dass du Zeit damit verschwendet hast. Allerdings bin ich nicht sicher, warum ich mit daran Schuld sein soll. Ich hab dir schon um 21:36 geantwortet, dass der Standard nur die 3 Parameter Version vorsieht.
Marc schrieb: > Nein, probiers aus, es geht: > // Selten dämlicher Code, aber unter C++ geht's > char *strncpy(char *dest, const char *src) { > return strncpy(dest,src,100); > } > Compiliert mit gcc in C++11, wie oben beschrieben. Nur weil es ohne Fehler oder Warnung compiliert, bedeutet nicht, dass es nicht UB ist. Aber ich muss meine Vorherige Aussage korrigieren. Es ist nicht UB, da du dieses strncpy nicht im namespace std definierst oder deklarierst. Allerdings sagt der Standard, es ist "unspecified", ob strncpy außerhalb von namespace std bekannt ist (std::strncpy gibt es sicher, strncpy nicht).
Dingens schrieb: > Mark B. schrieb: >> Dingens schrieb: >>> Nur unterstützt Eclipse GCC leider nicht die Funktionen strlen und strcpy. >>> (Ja string und cstring hab ich inkludiert. Hat nichts genützt) >> >> Selbstverständlich verfügt der GCC, oder besser gesagt: die >> C-Standardbibliothek über diese Funktionen. >> >> Was ist denn die Fehlermeldung? > > Siehe Bild. So viele Fehler in 3 Zeilen Code... merciless
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.