undefined reference to '__gxx_personality_v0'

  • Thread starter Albert Oppenheimer
  • Start date
A

Albert Oppenheimer

I have a small program, test.c. It runs OK. This is on Linux (kernel
2.6.8.1, GCC 3.4.1).

I decided to convert it to C++ before expanding it to a larger program. I
changed the filename to test.cpp and added

extern "C" {
}

around main and all the non-static subroutines. It compiles OK, but when I
link it, it says:

test.o (.eh_frame+0x11): undefined reference to '__gxx_personality_v0'

My program makes no reference to __gxx_personality_v0.

What do I need to do to get this program to link as a C++ program?

Thanks,
Allie
 
T

Thomas Tutone

Albert said:
I have a small program, test.c. It runs OK. This is on Linux (kernel
2.6.8.1, GCC 3.4.1).

I decided to convert it to C++ before expanding it to a larger program. I
changed the filename to test.cpp and added

extern "C" {
}

around main and all the non-static subroutines. It compiles OK, but when I
link it, it says:

test.o (.eh_frame+0x11): undefined reference to '__gxx_personality_v0'

My program makes no reference to __gxx_personality_v0.

What do I need to do to get this program to link as a C++ program?

This is platform specific, but try compiling (and linking) with "g++"
rather than "gcc." Or, when you link, make sure you specify the C++
library (which gcc does automatically if you use g++ as your command
line rather than gcc).

If you have further questions, you'll get better help asking in a
platform-specific newsgroup.

Best regards,

Tom
 
M

mlimber

Albert said:
I have a small program, test.c. It runs OK. This is on Linux (kernel
2.6.8.1, GCC 3.4.1).

I decided to convert it to C++ before expanding it to a larger program. I
changed the filename to test.cpp and added

extern "C" {
}

around main and all the non-static subroutines. It compiles OK, but when I
link it, it says:

test.o (.eh_frame+0x11): undefined reference to '__gxx_personality_v0'

My program makes no reference to __gxx_personality_v0.

What do I need to do to get this program to link as a C++ program?

Thanks,
Allie

The __gxx part indicates that this is a g++-specific implementation
issue. The .eh_frame probably indicates that it is concerned with
exception handling, code for which may be automatically inserted for
C++ programs (but not for C). If so, you could disable exceptions with
a compiler flag or link in the proper symbols from a library that came
with your compiler (perhaps libstdc++?), which may not get pulled in
with your current compiler flags. As the other respondent said, any
follow-up should be directed to a GNU newsgroup see the FAQ for some
alternate newsgroups:

http://www.parashift.com/c++-faq-lite/how-to-post.html#faq-5.9

Cheers! --M
 
P

Peter Most

Hello Albert,

Albert said:
I have a small program, test.c. It runs OK. This is on Linux (kernel
2.6.8.1, GCC 3.4.1).

I decided to convert it to C++ before expanding it to a larger program. I
changed the filename to test.cpp and added
This already enough to make it a C++ program. GCC will automatically compile
it as a c++ program because of the cpp extension.
extern "C" {
}

around main and all the non-static subroutines. It compiles OK, but when
I link it, it says:
It's not necessary. Remove the extern "C" stuff and try again, it should
compile and link fine.
You need the extern "C" only if you are calling a C function, like printf()
from a C++ module. If you would like to know more, google for "name
mangling" and you should find good explanations for it and what it's for.
test.o (.eh_frame+0x11): undefined reference to '__gxx_personality_v0'

My program makes no reference to __gxx_personality_v0.

What do I need to do to get this program to link as a C++ program?

Thanks,
Allie

hth Peter
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,769
Messages
2,569,580
Members
45,055
Latest member
SlimSparkKetoACVReview

Latest Threads

Top