作者热门文章
- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
当使用 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/
当使用 Android x86 工具链调试链接错误(undefined reference to _dso_handle)时,我注意到它正在静态链接 crtbegin_dynamic.o。这个文件的用
我使用了以下... ~/Development/Android/android-ndk-r8c/build/tools/make-standalone-toolchain.sh --platform=
从readelf我们知道一个ELF可执行文件的入口点在Android(32位ARM)中是“_start”,而“_start”定义在crtbegin_dynamic.S 用于动态链接的可执行文件。 问题
我是一名优秀的程序员,十分优秀!