Linux: STL String Error
-
Hallo, hoffe ihr könnt mir helfen
Mein "Programm"
#include <string> int main (void) { string test = "Irgendwas"; return 0; }
Führt beim kompilieren zu folgenden Fehlern:
In function
basic\_string<char, string\_char\_traits<char>, \_\_default\_alloc\_template<true, 0> >::Rep::copy(unsigned int, char const *, unsigned int)': /tmp/ccRxEXbK.o(.basic\_string<char, string\_char\_traits<char>, \_\_default\_alloc\_template<true, 0> >::Rep::gnu.linkonce.t.copy(unsigned int, char const *, unsigned int)+0x27): undefined reference to
string_char_traits<char>::copy(char *, char const *, unsigned int)'
/tmp/ccRxEXbK.o: In function\_\_malloc\_alloc\_template<0>::\_S\_oom\_malloc(unsigned int)': /tmp/ccRxEXbK.o(.\_\_malloc\_alloc\_template<0>::gnu.linkonce.t.\_S\_oom\_malloc(unsigned int)+0x1a): undefined reference to
endl(ostream &)'
/tmp/ccRxEXbK.o(.__malloc_alloc_template<0>::gnu.linkonce.t._S_oom_malloc(unsigned int)+0x27): undefined reference tocerr' /tmp/ccRxEXbK.o(.\_\_malloc\_alloc\_template<0>::gnu.linkonce.t.\_S\_oom\_malloc(unsigned int)+0x2c): undefined reference to
ostream::operator<<(char const )'
/tmp/ccRxEXbK.o(.__malloc_alloc_template<0>::gnu.linkonce.t._S_oom_malloc(unsigned int)+0x37): undefined reference to `ostream::operator<<(ostream &()(ostream &))'
collect2: ld returned 1 exit statususing namespace std erkennt Redhat 7.x angeblich nicht, auch std::string führt zu nichts...
Muss ich den GCC vielleicht eine Libary dazu linken?
-
#include <iostream> #include <string.h> using namespace std; int main() { string test = ("Irgendwas"); return 0; }
so funktionierts auf jeden fall
edit: uuuups, hab das dadrunter mit red hat linux nicht gelesen
-
#include <string> int main () { std::string test = "Irgendwas"; return 0; }
ist schon ok. Hast du auch mit g++ und nicht mit gcc kompiliert? Die Fehlermeldungen sind vom Linker und nicht vom Kompiler.
-
Ach bin ich dumm
Da sucht man die kompliziertesten Lösungen, dabei ist die Rätsels Lösung so einfach...
DANKESCHÖN!