当使用 Android x86 工具链调试链接错误(undefined reference to _dso_handle
)时,我注意到它正在静态链接 crtbegin_dynamic.o
。这个文件的用途是什么?在包含缺失符号 (_dso_handle) 的工具链安装目录中还有另一个类似的 crtbegin.o
。 crtbegin.o 和 crtbegin_dynamic.o 有什么区别?
最佳答案
C++ 具有全局构造函数和析构函数。 crtbegin.o 和 crtend.o 处理调用那些构造函数和析构函数。 crtbegin.o 的变体(例如 crtbeginS.o)对其他类型的可执行文件(例如静态可执行文件和共享库)执行相同的操作。
关于android - crtbegin.o 和 crtbegin_dynamic.o 是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2709864/