主机64位windows7虚拟机Debian864位
注意:在网络更新时,可能需要修改 etc/apt/sources.list 文件,把前几条从CD更新删除掉,这样就会从网络更新
1、vbox虚拟机linux挂载windows文件夹64位系统
mount-tvboxsf/共享的windows目录名/linux下装备要挂载的目录名
mount-oloop要挂载的文件名/linux下的目录名
cp准备复制的文件名/用mount-oloop挂载的目录名
umount/用mount-oloop挂载的目录名;取消挂载
2、debianLinux:mount时出现文件系统有问题时解决方法
Sudoapt-getinstallgccmake
Sudoapt-getinstalllinux-headers-amd64
sudoapt-getinstalldkms
再进入:VBOXADDITONS光驱执行sh.run结尾的文件
3、挂载映像文件到相应目录
mount-olooppm.img/mnt/p
/mnt/p
umount/mnt/p
4、原书中gcc ,ld命令需要用如下形式调用
gcc-c-m32-o输出文件.o源文件名.c
ld-melf_i386-s-o输出文件名 源文件名
使用以上命令时,发现使用-m32参数后,编译提示错误,如下:
_x86_64elf_i386i386linuxelf_l1omelf_k1omi386pepi386pecollect2:error:ldreturned1exitstatus
以下需要联网更新
首先要打开64位系统对32位的支持
第一步:确认64为架构的内核
dpkg--print-architecture 输出: adm64
说明已拥有64位架构内核。
第二步:确认打开了多架构支持功能
dpkg--print-foreign-architectures 输出: i386
说明已打开,如果没有需要手动打开
打开多架构支持
sudodpkg--add-architecturei386
sudoapt-getupdate
sudoapt-getdist-upgrade
如此这般你就拥有了64位系统对32位的支持
其次是安装gccmultilab
apt-getinstallgcc-multilibg++-multilib
5、在做boot.bin装入loader.bin时,先在BOCHS下运行FREEDOS格式化BOOT.IMG文件,然后在LINUX下复制LOADER.BIN到映像文件,然后再在WINDOWScommand命令行下,用DD把BOOT.BIN复制到映像文件,步骤不要错要不然BOCHS运行会出现问题