问题描述
我正在尝试为我的自定义内核链接一个c文件,但一直出现此错误。 这是我的c文件:
#include <string.h>
#define TRUE 1
#define FALSE 0
void main() {
char vmem_back_buffer[3932160];
char** vmem_descriptor = (char**)0x00008128;
for(int i = 0; i < 1280*1024*3; ++i) {
vmem_back_buffer[i] = 0xfb;
vmem_back_buffer[i++] = 0xfb;
vmem_back_buffer[i++] = 0xfb;
}
memcpy(*vmem_descriptor,vmem_back_buffer,3932160);
while(TRUE) {
int i = 1;
}
}
这就是我的编译和链接方式
gcc -m32 -fno-pie -ffreestanding -c src/kernel.c -o bin/kernel.o
ld -m elf_i386 -o bin/kernel.bin -T src/linker.l bin/kernel_entry.o bin/kernel.o --oformat binary
我已经卸载并安装了不同的c库软件包,并尝试包含许多在线资源推荐的crti.o
之类的东西。
我在做什么错了?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)