I/O Fehlermeldung



  • Hallo zusammen,

    ich komme gerade mit einem vom Compiler verursachten Fehler nicht ganz klar. Es wäre super, wenn mir da jemand weiterhelfen könnte! Das folgende Programm macht noch nichts, sollte doch aber fehlerfrei compiliert werden können:

    #include	<iostream>
    #include	<fstream>
    
    using namespace std;
    
    int main(int args, char **argv)
    {
        ifstream in("textfile.txt");
    
        if (!in) {
    	  cout << "could not open file!\n";
    	  return 1;
        }
    
        char vector[args];
        int var=0, num=0;
    
        return 0;
    }
    

    gcc -o classname classname.cpp liefert:

    [me@localhost assignment4]$ gcc -o classname classname.cpp
    /home/me/tmp/ccyrovL0.o: In function `__static_initialization_and_destruction_0(int, int)':
    classname.cpp:(.text+0x1d): undefined reference to `std::ios_base::Init::Init()'
    classname.cpp:(.text+0x22): undefined reference to `std::ios_base::Init::~Init()'
    /home/me/tmp/ccyrovL0.o: In function `main':
    classname.cpp:(.text+0x9a): undefined reference to `std::basic_ifstream<char, std::char_traits<char> >::basic_ifstream(char const*, std::_Ios_Openmode)'
    classname.cpp:(.text+0xad): undefined reference to `std::basic_ios<char, std::char_traits<char> >::operator!() const'
    classname.cpp:(.text+0xc0): undefined reference to `std::cout'
    classname.cpp:(.text+0xc5): 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*)'
    classname.cpp:(.text+0x274): undefined reference to `std::basic_ifstream<char, std::char_traits<char> >::~basic_ifstream()'
    classname.cpp:(.text+0x290): undefined reference to `std::basic_ifstream<char, std::char_traits<char> >::~basic_ifstream()'
    /home/me/tmp/ccyrovL0.o:(.eh_frame+0x12): undefined reference to `__gxx_personality_v0'
    collect2: ld returned 1 exit status
    

    BS: Mandriva Linux 2009.1 Spring



  • Nimm mal den g++ statt den gcc. Du versuchst hier C statt C++ zu kompilieren.



  • danke 🙄


Anmelden zum Antworten