You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 22.04下将OS开发配套BAT转为Shell脚本的报错解决求助

Ubuntu 22.04下将OS开发配套BAT转为Shell脚本的报错解决求助

昨天我买了一本关于OS开发的书,结果发现书里的配套脚本是针对Windows系统的.bat文件,这一点在商品描述里完全没提到。我现在需要把这个.bat文件转换成Ubuntu 22.04能用的Shell脚本,但转换后遇到了几个错误,实在不知道怎么解决,想请教下大家。

先给大家看下我的目录结构:

OsDev
--src/
----Boot.asm
----Kernel_Entry.asm
----main.c
--bin/

书里的对应章节源码我已经获取到了,我把原.bat文件重写成了下面的.sh脚本:

#!/bin/sh

nasm src/Boot.asm -f bin -o bin\bootsect.bin
nasm src/Kernel_Entry.asm -f elf -o bin\Entry.bin

gcc -m32 -ffreestanding -c src/main.c -o bin\kernel.o

ld -T NUL -o bin\Kernel.img -Ttext 0x1000 bin\Entry.bin bin\kernel.o

objcopy -O binary -j .text  bin\kernel.img bin\kernel.bin
copy /b /Y bin\bootsect.bin+bin\kernel.bin bin\os-image

qemu-system-i386 -drive format=raw,file=bin\os-image

但运行这个脚本时,我得到了以下错误:

ld: cannot open linker script file NUL: No such file or directory
objcopy: 'binkernel.img': No such file
./make.sh: 11: copy: not found

有没有人能告诉我这个脚本需要怎么修改才能在Ubuntu 22.04上正常运行呢?非常感谢!


备注:内容来源于stack exchange,提问作者user1775440

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.17 12:23:17