courselab / so2-gabrielvictorcf

so2-gabrielvictorcf created by GitHub Classroom
0 stars 0 forks source link

Can't build #1

Open monacofj opened 1 month ago

monacofj commented 1 month ago

Steps


monaco@ivy:~/Temp$ git clone git@github.com:courselab/so2-gabrielvictorcf.git
Cloning into 'so2-gabrielvictorcf'...
remote: Enumerating objects: 62, done.
remote: Counting objects: 100% (62/62), done.
remote: Compressing objects: 100% (43/43), done.
remote: Total 62 (delta 11), reused 62 (delta 11), pack-reused 0
Receiving objects: 100% (62/62), 49.50 KiB | 248.00 KiB/s, done.
Resolving deltas: 100% (11/11), done.
monaco@ivy:~/Temp$ cd so2-gabrielvictorcf/
exercise-01/ exercise-02/ exercise-03/ .git/        LICENSES/    
monaco@ivy:~/Temp$ cd so2-gabrielvictorcf/exercise-03/
monaco@ivy:~/Temp/so2-gabrielvictorcf/exercise-03$ ls
bios1.h  bios2.S       kaux.h    libtydos.c  NOTEBOOK  rt0.S       tydos.h
bios1.S  bootloader.c  kernel.c  logo.c      prog.ld   SOLVING.md  tydos.ld
bios2.h  kaux.c        kernel.h  Makefile    README    syscall.c
monaco@ivy:~/Temp/so2-gabrielvictorcf/exercise-03$ make
make: *** No rule to make target 'Makefile.m4', needed by 'Makefile'.  Stop.
monaco@ivy:~/Temp/so2-gabrielvictorcf/exercise-03$ echo "DOCM4_DIST=yes" > .dist
monaco@ivy:~/Temp/so2-gabrielvictorcf/exercise-03$ make
gcc -m16 -O0 --freestanding -fno-pic -fcf-protection=none -c  bootloader.c -o bootloader.o
as -32 bios1.S -o bios1.o
gcc -m16 -O0 --freestanding -fno-pic -fcf-protection=none -c  kernel.c -o kernel.o
kernel.c:20:10: fatal error: vbfs.h: No such file or directory
   20 | #include "vbfs.h"     /* Very basic filesystem functions  */
      |          ^~~~~~~~
compilation terminated.
make: *** [Makefile:44: kernel.o] Error 1
monacofj commented 1 month ago

Also, how to build disk.img with the DOS in it?

gabrielvictorcf commented 1 month ago

Hi Monaco! You can run the commands in this order:

  1. make
  2. make disk.img to create disk.img
  3. make mount to copy DOS into disk.img

Please do ping me again if you run at any issue, here through Github is ok as i'm monitoring it, but can you also take a look at SOLVING.md for further steps?