-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
第一种情况:C程序。
原因:
网上说:“__gxx_personality_v0这样的编译错误,是由于源代码的文件后缀名和代码的语法不相符合"比如用C的语法的文件,选择了cpp这样的后缀名(或者<大写C>这样的后缀名)”。
解决方法:
把cpp改名为.c,如果你写的是c代码
第二种情况:C++程序。
原因:
网上说:“__gxx_personality_v0”的错误信息表示试图用gcc编译c++的代码而产生错误"。对于 C++ 程序,编译的时候用 gcc 或者 g++ 都可以。但是在进行连接的时候最好用 g++,因为用 g++ 会自动进行 C++ 标准库的连接;用 gcc 连接 C++ 程序也可以,但是需要人为指定连接 C++ 标准库,否则就会出现 undefined reference to `__gxx_personality_v\0' 之类的错误。
解决方法:
1、用gcc 编译 c++ 程序需要添加 -lstdc+ 。可见-lstdc++ 所对应的是标准C++库。
sample: gcc -lstdc++ -o test test.c
2、如果你是c++代码,那么请使用g++
建议采用第二种方法,第一种不一定生效;