James Molloy's Tutorial Known Bugs: Difference between revisions
Jump to navigation
Jump to search
[unchecked revision] | [unchecked revision] |
Content deleted Content added
Revert because the documentation version of multiboot.h is out of date |
Even I don't link my kernel against libgcc. Libgcc should only be used for user-mode applications. Or else, you are "gnu-ing" your kernel. James Molloy shouldn't be criticized for this. |
||
Line 18: | Line 18: | ||
The tutorial recommends using these compilation options <tt>-nostdlib -nostdinc -fno-builtin -fno-stack-protector</tt>, but this is not the recommended practice. The tutorial neglects to pass the important <tt>-ffreestanding</tt> option. See [[Bare Bones]] on how to correctly compile C kernel files and how to correctly link the kernel. |
The tutorial recommends using these compilation options <tt>-nostdlib -nostdinc -fno-builtin -fno-stack-protector</tt>, but this is not the recommended practice. The tutorial neglects to pass the important <tt>-ffreestanding</tt> option. See [[Bare Bones]] on how to correctly compile C kernel files and how to correctly link the kernel. |
||
== Problem: Not using libgcc == |
|||
{{Main|libgcc}} |
|||
The tutorial disables libc and [[libgcc]] through the <tt>-nodefaultlibs</tt> option (implied by <tt>-nostdlib</tt>) but neglects to add back libgcc during the link. |
|||
== Problem: Not setting a stack == |
== Problem: Not setting a stack == |