当前位置: 技术问答>linux和unix
gcc3.3.2 -shared -fpic对异常支持不好吗?
来源: 互联网 发布时间:2015-08-17
本文导语: 我在一个so的函数中throw,却不能在调用这个函数的主程序中catch,在so中也不能catch。而同样的代码在主程序中执行,catch很正常。平台是AIX。 是不是目前gcc对(-fpic)下的异常还支持的不是很好? | ...
我在一个so的函数中throw,却不能在调用这个函数的主程序中catch,在so中也不能catch。而同样的代码在主程序中执行,catch很正常。平台是AIX。
是不是目前gcc对(-fpic)下的异常还支持的不是很好?
是不是目前gcc对(-fpic)下的异常还支持的不是很好?
|
gcc可以编译c++,但是不会连接c++的标准库。
下面是一个小的测试程序。
以下是版本信息:gcc version 3.2.2 20030222 (Red Hat Linux 3.2.2-5),没有加任何优化选项。
所以就算是用gcc也是没有问题的,不过不知道多线程情况下会不会有问题。
所以觉得应该不是编译器的问题,原因可能很多,因为不知道你的具体情况。
可能是优化选项的,平台,多线程...很多原因。
但是楼主既然是c++程序,最好还是用g++吧。:)
//////////////////////1.h///////////////
#include
class E
{
public:
E( int i ):m_a(i){};
~E(){};
void ep()const{ std::cout
下面是一个小的测试程序。
以下是版本信息:gcc version 3.2.2 20030222 (Red Hat Linux 3.2.2-5),没有加任何优化选项。
所以就算是用gcc也是没有问题的,不过不知道多线程情况下会不会有问题。
所以觉得应该不是编译器的问题,原因可能很多,因为不知道你的具体情况。
可能是优化选项的,平台,多线程...很多原因。
但是楼主既然是c++程序,最好还是用g++吧。:)
//////////////////////1.h///////////////
#include
class E
{
public:
E( int i ):m_a(i){};
~E(){};
void ep()const{ std::cout