It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center。
已关闭8年。
我有一个简短的程序example.cc,如下所示:
如果我独立编译该程序,则可以正常运行,
但是,当我与其他目标文件链接时,它失败,报告分段错误,我不这样做。
已关闭8年。
我有一个简短的程序example.cc,如下所示:
#include <stdio.h>
int main()
{
try {
throw 999;
} catch (int i) {
printf("Catch i:%d", i);
}
}
如果我独立编译该程序,则可以正常运行,
但是,当我与其他目标文件链接时,它失败,报告分段错误,我不这样做。
最佳答案
为什么不查看调试器,看看发生segfault的地方?
您的最小样本很好。我发现其中没有任何问题。很明显,您的其他目标文件有问题。
它是C ++,因此很有可能在启动过程中构造了另一个目标文件中的静态对象,或者在程序终止时破坏了它们,从而导致了问题。