为什么无法重新编译 GLibc 并关闭所有优化(即 -O0)?
特别是在这样做时:
make CFLAGS='-O0 -w' CXXFLAGS='-O0 -w'
I get:
#error "glibc cannot be compiled without optimization"
当我谷歌错误时,第一个结果tells http://devpit.org/wiki/Gnu_Toolchain/Compatibility_Matrix#endnote_ODonell_and_Drepper_on_Inline我到底为什么。
“在动态加载器的早期启动中(_dl_start
), 前
重新定位 PLT,无法进行函数调用。你必须内联
您将在早期启动期间使用的函数,或调用编译器
内置函数(__builtin_*
).
如果没有启用优化,GCC 将不会内联函数。早期
动态加载器的启动将通过
未重新定位的 PLT 和崩溃。”——Carlos O'Donell
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)