GCC 3.2 - chyba linkovani C++

Martin Proks proks na aerospace.fsik.cvut.cz
Pondělí Listopad 25 10:54:03 CET 2002


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

pri $gcc -c -o pokus.o pokus.cpp a vylistovani objektu v pokus.o
(pomoci mc - F3) se tam objevi misto i18n_init, nebo jejiho ekvivalentu,
to __gxx_personality_v0 + odkaz na funkci _Z9i18n_initv (ta je ale
asi v poradku).

V okamziku kdy nepouziji funkci i18n_init(), ale nasypu to do main(),
vse OK. Neni to problem tohoto konkretniho zdrojaku, dela to s jakoukoli 
funkci (vlastni, ne knihovni), zkousel jsem na nekolika "pokusech".

Ciste C preklada OK, zatim jsem nezaznamenal zadny problem. Dokonce
ani u kernelu, ani u teTeX-beta-20021116.

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.

Zakladni info o stroji, snad k necemu bude:

RH 8.0
"ne RH jadro - linusovo" - Linux 2.4.18, i686 athlon i386 GNU/Linux
gcc-3.2-7
gcc-c++-3.2-7
libgcc-3.2-7


Dik za nakopnuti,


/* ******* pokus.cpp ************* */
#include <stdlib.h>
#include <stdio.h>
#include <locale.h>
#include <libintl.h>

#define LOCALEDIR   "."
#define _(str) gettext (str)

#define PROGRAM_NAME   "pokus"

void i18n_init (void);

int main (int argv, char *argc[])
{
   // i18n initialize
   (void) i18n_init ();

   // first test ...
   (void) printf (_("Bleeeeee\n"));

   return 0;
}

void i18n_init (void)
{
   (void) setlocale (LC_ALL, "");
   (void) bindtextdomain (PROGRAM_NAME, LOCALEDIR);
   (void) textdomain (PROGRAM_NAME);
   return;
}
/* ********** end of pokus.cpp ******** */


-- 
Martin Proks
http://aerospace.fsik.cvut.cz/proks               http://www.vzlu.cz
mailto: proks na aerospace.fsik.cvut.cz              mailto: proks na vzlu.cz



Další informace o konferenci Linux