首页 > 解决方案 > 在 Ubuntu 中编译 xv6 时出错(生成文件:124:目标“内核”的配方失败)

问题描述

我只是尝试在我的 Ubuntu 18.04.3 中使用make qemu-nox

它失败并出现以下错误。你能给我一些关于这个错误的信息吗?

ld -m elf_i386 -T kernel.ld -o kernel entry.o bio.o console.o exec.o file.o fs.o ide.o ioapic.o kalloc.o kbd.o lapic.o log.o main。 o mp.o picirq.o pipe.o proc.o sleeplock.o spinlock.o string.o swtch.o syscall.o sysfile.o sysproc.o trapasm.o trap.o uart.o vectors.o vm.o - b binary initcode entryother trap.o:在函数tvinit': /home/lee/OS-Homework/trap.c:23: undefined reference to向量'/home/lee/OS-Homework/trap.c:24:未定义对“vectors”Makefile的引用:124:目标“kernel”的配方失败make:*** [内核]错误1

标签: linuxubuntuxv6

解决方案


链接时,ld抱怨缺少vectors由规则生成的数组vectors.S

vectors.S: vectors.pl
    perl vectors.pl > vectors.S

似乎没有生成此规则...

要构建vector.S只需键入make vectors.Sbefore make qemu-nox,甚至在一个命令中:

make vectors.S qemu-nox

推荐阅读