ASMR REAL C/C++ X-platform programming: No cuts, no fakes, ugly honest work. Adding macOS from linux
The PLD-USBC meter OSD (On Screen Display) has already been written to work with Windows and linux, the last OS left was macOS which I've been lagging on because I don't usually work directly on a mac when writing software for it.
To make it workable for me I used remote-display over VNC from linux to my 2015 21" iMac, and then additionally SSH'd in to a pair of terminals in to the same machine ( because trying to do text / terminal work via VNC is no fun at all, too laggy/unpredictable even on ethernet/LAN ).
The software using SDL2 as the gfx engine.
vim is the editor being used on the mac, unfortunately for myself (and you!) I hadn't previously set up this iMac with my usual .vimrc so there's a period of time during the video where I'm stumbling around with default settings and it's *painful*.
Modifying the code to suit macOS isn't a huge task since the linux version already works but there are enough things different that to start with I end up duplicating ( triplicating? ) some code that I later realise I could probably merge back with the linux version and some additional parameters to reduce code replication.
******************* START WARNING *********************
If you're a "Elitist/professional coder" you're going to be squirming in your chair and pulling out your hair; I'll save you the time right now - don't even bother trying to suggest/correct or otherwise; I've been coding for over 40 years and continuously learning and updating. While this video illustrates it's not the prettiest or the most efficient process, this is a REAL LOOK at normal people programming; it's a view in to the reality that most programming is an ugly, slow, repetitive process that is nothing like the movies or what the 0.1% of coders want you to think it's really like.
I honestly couldn't give a damn if you think you can do it better; "Bully for you".
******************* END WARNING *********************
00:00 Welcome to the start of literal cross-platform development in C++ between linux and macOS
04:20 Realising I'm going to have to approach this differently from linux because macOS uses a different assignment style for tty.usb ports ( probably could make this work for linux instead too which would be more generic and better )
11:42 Finally start getting sick of everything and begin setting vim up and eventually saving to .vimrc
19:30 First builds, and we've got errors popping up due to missing headers - a lot of this is because I have used the precompiler to select #include's based on __linux__ or __WIN32 but now I need to switch more to __WIN32 or *not* __WIN32 given a lot of commonality between linux/macOS
22:50 Now we start to run... and CRASH :(
27:59 Hooray, we have success (and more phishing emails coming in)