概述
学习[30天自制操作系统]
@[遇到的问题|场景还原|尝试过的解决办法|]
问题描述
光盘代码day_02 helloos_4 helloos_5
在使用makefile 运行qemu 模拟器过程出错
场景还原
makefile
ipl.bin : ipl.nas Makefile
../z_tools/nask.exe ipl.nas ipl.bin ipl.lst
helloos.img : ipl.bin Makefile
../z_tools/edimg.exe imgin:../z_tools/fdimg0at.tek
wbinimg src:ipl.bin len:512 from:0 to:0 imgout:helloos.img
asm :
../z_tools/make.exe -r ipl.bin
img :
../z_tools/make.exe -r helloos.img
run :
../z_tools/make.exe img
copy helloos.img ..z_toolsqemufdimage0.bin
../z_tools/make.exe -C ..z_toolsqemu
clean :
-del ipl.bin
-del ipl.lst
src_only :
../z_tools/make.exe clean
-del helloos.img
路径无任何问题
尝试作者给出的代码也出现同样问题
起初以为是 windows 路劲/ 和 的区别导致的,最后尝试了所有可能性也徒劳无功
以下是出错信息
C:UsersDejavuDesktoptolsethelloos5>make run
C:UsersDejavuDesktoptolsethelloos5>..z_toolsmake.exe run
../z_tools/make.exe img
make.exe[1]: Entering directory `C:/Users/Dejavu/Desktop/tolset/helloos5’
../z_tools/make.exe -r helloos.img
make.exe[2]: Entering directory `C:/Users/Dejavu/Desktop/tolset/helloos5’
../z_tools/nask.exe ipl.nas ipl.bin ipl.lst
../z_tools/edimg.exe imgin:../z_tools/fdimg0at.tek
wbinimg src:ipl.bin len:512 from:0 to:0 >imgout:helloos.img
make.exe[2]: Leaving directory `C:/Users/Dejavu/Desktop/tolset/helloos5’
make.exe[1]: Leaving directory `C:/Users/Dejavu/Desktop/tolset/helloos5’
copy helloos.img ..z_toolsqemufdimage0.bin
process_begin: CreateProcess((null), copy helloos.img ..z_toolsqemufdimage0.bin, …) failed.
make (e=2): 系统找不到指定的文件。
..z_toolsmake.exe: * [run] Error 2
在此记过,待后解决
方案一
原因是makefile linux unix 返回值为0时正常,而windows 返回值为1时正常,所以makefile总认为自己没有正确执行copy 等命令,解决办法。用make -i 忽略出错信息,
解决来源
http://www.crifan.com/make_makefile_recipe_for_target_failed_omit_error_while_executing_makefile/
在此例中,忽略了错误信息,任然不能执行copy命令,经验证,就是无法从makefile中执行copy命令,猜想可能与路径有关,压根就没进入copy 的目录,待以后进步了,再解决吧。
最后
以上就是跳跃哈密瓜为你收集整理的学习[30天自制操作系统]day02遇到的makefile的问题(未解决)方案一的全部内容,希望文章能够帮你解决学习[30天自制操作系统]day02遇到的makefile的问题(未解决)方案一所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复