对elf_i386的'memcpy'链接的未定义引用

问题描述

我正在尝试为我的自定义内核链接一个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 (将#修改为@)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...