在编译于渊的《Orange's 一个操作系统实现》中的源代码时, 经常提示:
klib.c:(.text+0xe5): undefined reference to __stack_chk_fail' make: *** [kernel.bin] Error 1
这是由于GCC中的编译器堆栈保护机制造成,编译时禁掉就可以。
解决方案:
在CFLAGS后面加上-fno-stack-protector
转载请注明来源,原地址保持永久更新。
博客首页:作程的技术博客
文章标题:《编译系统内核 -fno-stack-protector》
本文链接:https://it.zuocheng.net/compile-system-kernel-fno-stack-protector