Erstes C++ Programm unter MorphOS kompiliert nicht

Ihr habt ein Problem mit C++ oder anderen Sprachen ? Dann seit Ihr in diesem Forum genau richtig! Hier können alle Fragen gestellt werden, die mit Programmierung (MorphOS, Linux, BeOS, BSD,...) zu tun haben.

Moderatoren: analogkid, roschmyr

Benutzeravatar
Yvan
Mitglied
Mitglied
Beiträge: 56
Registriert: 26 Aug 2007, 15:18

Erstes C++ Programm unter MorphOS kompiliert nicht

Beitragvon Yvan » 18 Nov 2008, 17:50

Hallo, soeben wollte ich meine ersten Schritte mit C++ machen und schon mein erstes Programm will unter Morphos nicht kompilieren.

Hier der Code, Dateiname hallowelt.cpp:

#include <iostream>

int main()
{
std::cout << "Hallo, Welt!" << std::endl;
}


Gebe ich g++ -o hallowelt hallowelt.cpp ein erscheint folgendes:

/t/cceSyTPl.o: In function `main':
/t/cceSyTPl.o(.text+0x16): undefined reference to `cout'
/t/cceSyTPl.o(.text+0x1a): undefined reference to `cout'
/t/cceSyTPl.o(.text+0x24): undefined reference to `ostream::operator<<(char const *)'
/t/cceSyTPl.o(.text+0x32): undefined reference to `endl(ostream &)'
/t/cceSyTPl.o(.text+0x36): undefined reference to `endl(ostream &)'
/t/cceSyTPl.o(.text+0x38): undefined reference to `ostream::operator<<(ostream &(*)(ostream &))'
collect2: ld returned 1 exit status
Ram Disk:>

Mal vorweggenommen: Unter Linux kompiliert es wunderbar und läuft auch.

Muss ich beim MOS_SDK irgendwie was anders machen? Oder geht C++ gar nicht richtig damit?

Thore
Blue Morpho
Blue Morpho
Beiträge: 2631
Registriert: 30 Jul 2006, 18:09
Wohnort: Reutlingen
Kontaktdaten:

Beitragvon Thore » 18 Nov 2008, 17:58

Lass das std:: mal weg und füg oben ein:
using namespace std;

ist aber nicht unbedingt nötig.
http://www.disk-doktor.de

Benutzeravatar
Kronos
Moderator
Moderator
Beiträge: 719
Registriert: 07 Sep 2003, 01:10
Wohnort: Hagen

Re: Erstes C++ Programm unter MorphOS kompiliert nicht

Beitragvon Kronos » 18 Nov 2008, 23:05

Yvan hat geschrieben:Hallo, soeben wollte ich meine ersten Schritte mit C++ machen und schon mein erstes Programm will unter Morphos nicht kompilieren.

Hier der Code, Dateiname hallowelt.cpp:

#include <iostream>

int main()
{
std::cout << "Hallo, Welt!" << std::endl;
}



Also hier geht das so durch, muss also an deinem Compiler-Setup liegen :roll:

Das alte SDK von anno Rauchwaren hatte so einige Probs mit C++, keine Ahnung obs daran liegt, ich hab es hier über Cubic-IDE installiert, IMO grad für Anfänger die beste Alternative.

Also Cubic-Demo und Compiler-AddOne runterladen und installieren und dann müsst es gehen.
!! Bin Wichtig !!

Thore
Blue Morpho
Blue Morpho
Beiträge: 2631
Registriert: 30 Jul 2006, 18:09
Wohnort: Reutlingen
Kontaktdaten:

Beitragvon Thore » 19 Nov 2008, 10:14

Es könnte an einer fehlenden Lib liegen (z.B. libstd++), der Pfad zu den Libs stimmt nicht, oder die Version von gcc macht es nicht richtig.
Schau mal mit SnoopDos oder Snoopium, ob eine Linklib verwendet werden soll, die er nicht findet...
http://www.disk-doktor.de

[ujb]
Tastaturkiller
Tastaturkiller
Beiträge: 314
Registriert: 03 Jun 2005, 18:05
Wohnort: Ostwestfalen & Freiburg

Re: Erstes C++ Programm unter MorphOS kompiliert nicht

Beitragvon [ujb] » 20 Nov 2008, 00:51

[quote="Yvan"]Hallo, soeben wollte ich meine ersten Schritte mit C++ machen und schon mein erstes Programm will unter Morphos nicht kompilieren.

Hier der Code, Dateiname hallowelt.cpp:

#include <iostream>

int main()
{
std::cout << "Hallo, Welt!" << std::endl;
}

Leicht OT: Wenn du noch kein C++ kannst und vor allem unter MorphOS programmieren willst, tu dir C++ nicht unbedingt an. Der Support für C++ ist mieserabel. Wenn du keine speziellen Gründe für C++ hast, bleib besser bei C.
Ich habe mehr oder weniger unter MorphOS aufgegeben und nutze vor allem Visual Studio (was aber auch noch andere Gründe hat). Ich will aber bald das Projekt C++ Programmierung unter MorphOS mal wieder aufnehmen.

On topic: Das SDK von anno tobak geht mit C++ faktisch gar nicht, da ist einiges verbugt (auf Anfrage in #morphos bekam ich vor Jahren raus, dass niemand sich ernsthaft mit g++ auseinandergesetzt hat, da niemad C++ nutzt...). Ich habe es damals jedenfalls nicht hinbekommen, dass g++ irgendetwas vernüftig übersetzt...
Mit CubicIDE geht es jetzt, dennoch bleibt es mit C++ etwas schwierig ("hello world" und so geht noch, aber schon eine Anpassung meiner alten StormC4 Projekte ist schwierig).

Benutzeravatar
psd
Tastaturkiller
Tastaturkiller
Beiträge: 384
Registriert: 20 Mär 2004, 18:18
Wohnort: Ingelheim

Beitragvon psd » 20 Nov 2008, 08:46

Also ich bin jetzt nicht sooo der C++-Crack, aber ich sehe das Problem nicht. Die vom SDK unterstützte GCC-Version kann noch nicht wirklich gut mit Templates umgehen, aber sonst sind mir keine Probleme aufgefallen.

Thore
Blue Morpho
Blue Morpho
Beiträge: 2631
Registriert: 30 Jul 2006, 18:09
Wohnort: Reutlingen
Kontaktdaten:

Beitragvon Thore » 20 Nov 2008, 12:08

@Yvan
Welche Version verwendest du?
Hast Du es auch korrekt installiert?
Funktioniert es wenn du das namespace-Zeug nicht verwendest?
Funktionieren normale C-Programme wie dieses?:

#include <stdio.h>

void main(){
printf("Ein Test\n");
}
http://www.disk-doktor.de

Benutzeravatar
Yvan
Mitglied
Mitglied
Beiträge: 56
Registriert: 26 Aug 2007, 15:18

Beitragvon Yvan » 24 Nov 2008, 17:53

Danke für die Antworten:

- Wie stellt man die Version denn fest?

Es funktioniert auch mit using namespace std; nicht.

Aber der Tip mit Snoopdos war gut:

550 [9] cpp0 Open gg:include/g++-3/stddef.h Read Fail

Die C++ Library ist nicht da.

Normale C Programme kompilieren wunderbar. Ich denke ich bleibe beim Peggy mal bei C und lerne unterdessen unter Linux C++.

Ich kann später immer noch entscheiden ob ich es auf dem Peggy nochmals versuchen wil.

Thore
Blue Morpho
Blue Morpho
Beiträge: 2631
Registriert: 30 Jul 2006, 18:09
Wohnort: Reutlingen
Kontaktdaten:

Beitragvon Thore » 25 Nov 2008, 10:32

Am besten installierst du den gcc nochmal. Oder Du wartest bis das neue MOS SDK da ist, dann dürfte das Problem auch behoben sein.
Kannst auch mal nach der Datei suchen und in das Verzeichnis kopieren, vielleicht ist nur die Installation etwas schiefgelaufen.
http://www.disk-doktor.de


Zurück zu „Code-Küche“



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast