Neu in Cpp und Probleme mit GCC...
-
Hi, ich bin gerade beim Einstieg in "eure" Sprache und finde im folgenden Code
meinen Fehler nicht...#include <iostream> using namespace std; class menu { public: void foo(){ printf("MoinMoin Welt!"); } }; int main(){ menu A; A.foo(); return 0; }Der Compiler(GCC 4) gibt mir folgende Meldung aus:
/usr/bin/ld: Undefined symbols:
std::ios_base::Init::Init()
std::ios_base::Init::~Init()
___gxx_personality_v0
collect2: ld returned 1 exit statusHoffe auf eure Kompetenz

-
Es wurde geholfen
#include <iostream> using namespace std; class menu { public: void foo() { cout<<"Hallo Welt\n"; } }; int main(){ menu A; A.foo(); return 0; }
-
Jetzt ist es eher schlimmer geworden...
/usr/bin/ld: Undefined symbols:
std::ios_base::Init::Init()
std::ios_base::Init::~Init()
std::cout
std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)
___gxx_personality_v0
collect2: ld returned 1 exit status
-
Mal ins Blaue ... hast du vielleicht mit gcc statt g++ compiliert?
-
Richtig, wieso ist der nicht richtig? (BTW. Hab doch oben GCC 4 geschrieben)
Ist der GCC nur fur C oder was?
Weil sobald ich das include und die Textausgabe wegnehme
kompiliert er das Ding... Aber das dürfte er wenn er nur für C wäre ja
nicht machen, wegen der Klasse.
-
Vermutlich compilierst Du mit g++, linkst aber mit gcc..
Natürlich gibts verschiedene Compiler (zumindest Compiler-Modi) für C und C++, ist ja nicht dasselbe, gell? Der Unterschied liegt aber nicht nur in der Sprache, sondern auch darin, dass der gcc (beim Linken) nur die libc Bbliothek mitlinkt, der g++ aber zusätzlich die libstdc++, die die angemeckerten Symbole enthalten.
-
Ahh, das ist doch mal eine Antwort!
Domo Arigato an alle Beitragsschreiber!