undefined reference to `std::basic_istream<...>::ignore()'



  • Hi,

    ich habe ein C++-Programm, das auf einem Rechner kompilierbar ist und auf einem anderen die Fehlermeldung

    g++ -L../../../arprec/lib -L../../../gsl/lib -o"calcETP" ./CalcETP.o ./src/error.o ./src/multinom.o ./src/seq_multinom.o -larprec -lgsl -lgslcblas
    ../../../arprec/lib/libarprec.a(init.o)(.text+0x51d): In function mp::mp\_read\_constants(char const*)': : undefined reference tostd::basic_istream<char, std::char_traits<char> >::ignore()'
    ../../../arprec/lib/libarprec.a(binary_io.o)(.text+0x185): In function mp\_real::read\_binary(std::basic\_istream<char, std::char_traits<char> >&)': : undefined reference tostd::basic_istream<char, std::char_traits<char> >::ignore(long)'
    collect2: ld returned 1 exit status
    make: *** [calcETP] Error 1

    ausgibt. Weiss jemand, was hier passiert und wie man es behebt?



  • ignore hat bis zu zwei parameter. es scheint, dass das das problem ist. wenn ich jetzt spekulieren darf: auf dem einen system gibt es 3 verschiedene ignore versionen (keinen, einen und zwei parameter) und im anderen system gibt es nur eine funktion mit default parametern. ist aber reine spekulation.

    hast du wirklich alles neu compiliert auf dem anderen system? auch die libarprec.a?



  • Ich habe jetzt auch libarprec.a kompiliert, jetzt läuft es
    danke


Anmelden zum Antworten