Day 34 — Linkers go brrrrr

Continuing from the day before yesterday, I started looking into linkers and loaders. Till now, I haven't had experience writing multiple C files that work together. And up until yesterday, my only other experience with .so files has been knowing that if I put opencv's .so file in my Python …

Read

There are 0 Comments.

Day 33 — There are so many LD variables!

Using strace to spy on ghostscript's system calls made me wonder if there's a way to print the names of all function calls (along with their file paths) that a compiled executable makes after you invoke it on the command-line. This would be awesome to navigate large C codebases …

Read

There are 0 Comments.

Day 32 — A Python C extension module!

Today I did some Yak shaving and made opep because opening/reading each PEP in its own browser tab (with all the extra information on the webpage) was getting tiring both for me and the browser.

I'd used the man command a lot yesterday to read some manual entries, so …

Read

There are 0 Comments.

Day 31 — Spying on ghostscript

I recently (at the start of my batch) found out about strace from this zine by Julia Evans! Today I used it to look at things ghostscript does under the hood (system calls!) to do a PDF to PNG conversion. I also read through the manual page for strace which …

Read

There are 0 Comments.

Day 30 — Upgraded to Ubuntu 20.04

Today I spent a lot of time upgrading my Ubuntu from 18.04 to 20.04, just to get a new version of gnome-shell which was needed by this cool window manager I wanted to try out. The whole process reminded me of 2014 when I was literally trying out …

Read

There are 0 Comments.