Day 03 – Web Hosts, Webkit, and SQlite3, ODROID!
Today resulted in nothing special. My web host decided to ignore my ticket statements and disabled some important scripts on my site, like I told them to not do despite every bit of reasoning I gave them to NOT do so. A phone-call later with an actual person to explain everything proved pretty much everything I was saying. Shocker! This, along with other things, makes me question if my Associates in Computer Science was worth getting in the first place.
So I went ahead and live updated the image with the remaining QT Modules, which all worked except the elephant in the room, QTWebkit. The problem with this one is that the current tutorial on cross compiling doesn’t cover every module, which has resulted in me having to do more exploring around in how to get things working. One thing that became apparent was that because the Raspbian image I was using did NOT have SQLite3-dev, I couldn’t compile QTWebkit! All this work only to be faced with another brick wall… great.
At this point, I’d like to note this is Day 3. A native build of QT5, on an actual Raspberry Pi would have been finished by now. With this in mind, I scavenged around for a spare Pi and remembered my one running my Bitcoin mining. I figured I could just swap things around, but I think the age of the Pi is now more obvious in that it doesn’t seem to want to do anything else. Attempting to change SD cards on it results in panics and other oddities. For something I need to rely on, this wasn’t it.
I have a Model A, but according to the native build instruction set, 256MB of ram will only result in compiling errors. This was understandable, so despite having a spare Model A, I can’t use it. I looked at my unused Model B+, something I ordered the day it came out and being lucky to get it. I haven’t used it in any projects and now perhaps was its moment to shine. I had concern if I would need a second Pi for anything else, namely one to run the actual tests on and to test cluster mechanics with the domain-server and assignment-clients. I decided to opt out of the idea of using it and instead turned to a now discontinued clone of the Pi: the ODROID-W. It has 512MB of ram, the same processor, and a single USB port. I made a ‘initial’ image for general use (activating SSH, setting overclock, updated and upgraded, etc), backed it up (may need it for cross compiling), then set the ODROID-W into motion.
The only hiccup was the overclock and needing to find a power enough power supply for the unit. I had recently gotten a Nobis NB09 (mentioned in yesterday’s journal), and mine came with a rather annoying 3A dual charger. I am not sure if the 3A refers to each USB port or split amongst the two, but even if it doesn’t deliver the solid 3A, even half that amount would work for what I need. Upon plugging it into my server spot in the basement, it began to glow with rainbow colors, reminding me why I gave this to my father to use. Never the less, I plugged the ODROID-W in, connected a USB ethernet adapter and gave the ODROID a direct feed into the switch. I look up on all devices on the network and find the unit almost immediately. We are good to go.
I began following a new tutorial on how to natively build QT on the Pi, which started without too many issues. The first issue the came up was from the configure phase, where it took a VERY long time (almost an hour), and made me fully aware as to how intense of an operation this was going to be on the tiny ODROID-W. I already geared it up with a heat-sink, and being downstairs meant the ambient temperature was very low, but knowing this would be going on for almost 2 days gave me some concerns. I went ahead with everything anyway, but upon starting the make operation, I realized where the tutorial stumbled on a few key details: where to run make. On one hand, it had me change configurations for QTBase, which is in the QTBase folder, but after that, it doesn’t say where to run make or configure. For future references, I ran configure and make in the QTBase folder, very much like how I had to do things with the cross compiling process. I am hoping that is what I had to do, and will only really know if I made a mistake if the compiling process ends early. Time will only tell.
Tomorrow will prove interesting. I am now effectively racing against the slowest method of obtaining the library files with what should be the quickest. I am also not looking forward towards having to see if I have to do another compile on an updated image with SQLite3 downloaded.