Fixing Warnings & Compile Errors | 32 Bit OS Dev (in C)

Channel:
Subscribers:
5,840
Published on ● Video Link: https://www.youtube.com/watch?v=IE2-w_kxhyY



Duration: 1:20:23
332 views
14


Fixing compile issues and booting for gcc and clang, and fixing warnings from -Wall & -Wextra. Mainly to get back into this project, and get it working for development on more systems.

OS Dev playlist:
https://www.youtube.com/playlist?list=PLT7NbkyNWaqajsw8Xh7SP9KJwjfpP8TNX

Git Repos:
Sourcehut: https://git.sr.ht/~queso_fuego/quesos
Github mirror: https://github.com/queso-fuego/amateuros

Repo state at start of this video:
git clone -n https://github.com/queso-fuego/amateuros
cd amateuros
git checkout 3c10ac4b8ded4c8c3e8fe4eebb8463fd9d8e463b

Join the Community Discord: https://discord.gg/yKm4T89QFn

Contact:
email: fuegoqueso@gmail.com
twitter: @Queso_Fuego
twitch: https://www.twitch.tv/queso_fuego

Notes:
- There are probably other errors not shown here, either under -Wpedantic or on other OSes like the BSD's. But hopefully this clears up most of them and helps building & booting.
I will go through and fix most of the -Wpedantic errors at a later date, maybe when the filesystem is done.

Next video:
- Small C program to convert bdf fonts; starting the open() syscall

Outline:
0:00 fix initial compile errors
11:58 fix clang errors and qemu invocation
16:40 add -Wall -Wextra
19:36 debug loading kernel, refactor rw_sectors() reading
37:08 test different optimization levels, "fix" broken putc()
41:55 refactor rw_sectors() writing, fix remaining warnings
1:10:53 coming up & outro

Questions about setup/software/etc.?
Check the FAQ: https://queso_fuego.srht.site/about.html

Music credits:
Morning Routine by Ghostrifter Official | https://soundcloud.com/ghostrifter-official
Music promoted by https://www.chosic.com/free-music/all/
Creative Commons CC BY-SA 3.0
https://creativecommons.org/licenses/by-sa/3.0/

#osdev #compilererrors #gcc







Tags:
queso fuego
compile errors
gcc
clang
qemu
reading sectors
loading kernel
os dev
in c
c programming
low level