GCC 3.2 - chyba linkovani C++
Karel Zak
zakkr na zf.jcu.cz
Pondělí Listopad 25 12:01:00 CET 2002
On Mon, Nov 25, 2002 at 10:54:03AM +0100, Martin Proks wrote:
> Dobry den,
>
> presel jsem na RH 8.0 a chtel jsem si zkompilovat C++
> program. I objevila se chyba.
>
> $ gcc -o pokus pokus.cpp
> /tmp/ccUEKiBl.o(.eh_frame+0x11): undefined reference to
> `__gxx_personality_v0' collect2: ld returned 1 exit status
Ja bych tomu nerikal C++ ale v tomto pripade C :-)
> RH 8 uz je nejakou dobu venku a zadne nadavky tohoto druhu jsem
> nezaznamenal, update gcc taky neni, takze predpokladam, ze chyba bude
> nekde u me (napr. neco nenainstalovane, nebo jsem zapomnel linkovat
> nejakou knihovnu, ...), ale nevim kde a co.
Asi takto:
gcc 2.95.4:
$ gcc -Wall -O3 -o pokus pokus.cpp
$ ldd ./pokus
libc.so.6 => /lib/libc.so.6 (0x40020000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
$ g++ -Wall -O3 -o pokus pokus.cpp
$ ldd ./pokus
libstdc++-libc6.2-2.so.3 => /usr/lib/libstdc++-libc6.2-2.so.3 (0x40020000)
libm.so.6 => /lib/libm.so.6 (0x4006a000)
libc.so.6 => /lib/libc.so.6 (0x4008b000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
g++-3.2 (GCC) 3.2.1 20021111 (Debian prerelease):
$ gcc-3.2 -Wall -O3 -o pokus pokus.cpp
$ ldd ./pokus
libc.so.6 => /lib/libc.so.6 (0x40020000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
$ g++-3.2 -Wall -O3 -o pokus pokus.cpp
$ ldd ./pokus
libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x40020000)
libm.so.6 => /lib/libm.so.6 (0x400cb000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x400ec000)
libc.so.6 => /lib/libc.so.6 (0x400f4000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
Karel
--
Karel Zak <zakkr na zf.jcu.cz>
http://home.zf.jcu.cz/~zakkr/
Další informace o konferenci Linux