Когда я связываю файл .ld с помощью gcc, я получаю следующую ошибку
/usr/bin/ld: cannot find -lreadline
collect2: error: ld returned 1 exit status
мои сценарии run.sh содержат следующую команду: rm * .o * .bin * .iso rm -rf isodir
сборка файла boot.s
as --32 boot.s -o boot.o
связывание ядра с файлами kernel.o и boot.o
gcc -m32 -lunistd -Wno-unused-result -c kernelCheck.c -o kernel.o -std=gnu99 -ffreestanding -flto -O2 -Wall -Wextra -L/usr/lib -fno-exceptions
gcc -m32 -T linker.ld -o MoraWing.bin -ffreestanding -Wl,--build-id=none -O2 -nostdlib boot.o kernel.o -lgcc
grub-file --is-x86-multibootMoraWing.bin
сборка iso-файла
mkdir -p isodir/boot/grub
cp MoraWing.bin isodir/boot/MoraWing.bin
cp grub.cfg isodir/boot/grub/grub.cfg
grub-mkrescue -o MoraWing.iso ./isodir
запустите его в qemu
qemu-system-x86_64 -cdrom MoraWing.iso