GCC Problem



  • Hallo zusammen,

    ich bin auf Linux umgestiegen und versuche gerade, einen Compiler zum Laufen zu bekommen. Der GCC ist standardgemäßg installiert. Mit Vim habe ich folgendes hoch komplexes Programm erstellt:

    #include <iostream>
    using namespace std;
    
    int main()
    {
      cout << "Hello World" << endl;
      return 0;
    }
    

    Wenn ich nun mit den Befehl gcc Datei.cpp aufrufe, kommen leider ein paar Meldungen, die ich nicht ganz einzuordnen weiß. Müssen hier alte Header verwendet werden oder wird hier nicht kompiliert?

    In function main': test.cpp:(.text+0x14): undefined reference tostd::cout'
    test.cpp:(.text+0x19): undefined reference to std::basic\_ostream<char, std::char\_traits<char> >& std::operator<< <std::char\_traits<char> >(std::basic\_ostream<char, std::char_traits<char> >&, char const*)' test.cpp:(.text+0x21): undefined reference tostd::basic_ostream<char, std::char_traits<char> >& std::endl<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&)'
    test.cpp:(.text+0x29): undefined reference to std::basic\_ostream<char, std::char\_traits<char> >::operator<<(std::basic\_ostream<char, std::char\_traits<char> >& (*)(std::basic\_ostream<char, std::char\_traits<char> >&))' /tmp/cckH2RNb.o: In function__static_initialization_and_destruction_0(int, int)':
    test.cpp:(.text+0x51): undefined reference to std::ios_base::Init::Init()' test.cpp:(.text+0x56): undefined reference tostd::ios_base::Init::~Init()'
    collect2: ld returned 1 exit status

    Was stimmt mit std nicht?

    Danke
    lg, freakC++

    PS.: Falls euch der Thread zu Linux lastig ist, dann verschiebt mich. War mir nicht so ganz sicher 🙂


  • Mod

    Der gcc ist ein C-Compiler. Er wechselt zwar automatisch zu C++, je nach Dateiendung, aber er linkt dann trotzdem nur gegen die C-Laufzeitbiliothek. Nimm den C++-Compiler g++.

    edit: Eventuell musst du den g++ noch nachinstallieren, bei vielen Distributionen sind Entwicklertools nicht Standard.



  • libstdc++ auch installiert?



  • probiers mit

    g++ main.cpp
    


  • Dieser Thread wurde von Moderator/in SeppJ aus dem Forum C++ (auch C++0x) in das Forum Compiler- und IDE-Forum verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • Dass der gcc nur die C - Laufzeitbibliothek linkt, wusste ich nicht. Mit dem gcc klappt es. Er war übrigens installiert.

    Danke euch!

    lg, freakC++


Log in to reply