Building v3 for ARM64... and the failure within #288
Replies: 4 comments 6 replies
-
|
Hi, I think the issue’s on my end while building the app with Qt open source. Also, the Qt version in the Raspberry PI repos is probably too old for Serial Studio (it needs at least 6.5, and I think it's still stuck on 6.2)....don't know about Ubuntu. And that's why I usually ship AppImages for Linux users 😂 You’ll likely have better luck installing Qt for ARM Linux from here, make sure to grab the ARM64 installer. I’ll update you as soon as I’ve tested the open source build and pushed the changes. I’m also planning to add an option to force software rendering for the QML user interface, since the Raspberry Pi probably doesn’t have proper GPU support. Thanks for the report, and good luck on your project. Would love to see some photos when we get it to work! |
Beta Was this translation helpful? Give feedback.
-
|
So interestingly, I started with the official Qt installer for ARM. With the entirety of Qt 6.8.3 and Qt Creator installed, it was missing a lot of packages. That was true on both Raspbian and Ubuntu. Directly installing the packages was still required. You're right about the RPi repos though, they are fairly old (though Debian 12 is also out of date so that's not surprising). Part of the reason I switched to a 5 was so I could use Ubuntu 25.04, which the old 3B+ didn't even have enough RAM for- Ubuntu has all the Qt packages available. Thanks for looking, and I'll keep an eye out for the new open source build! Luckily I've already confirmed the setup otherwise works on a windows laptop, but the solar power station can't usually keep that running for the whole day of racing. |
Beta Was this translation helpful? Give feedback.
-
|
Just pushed a commit that should fix the runtime issue. Turns out I was a bit of an idiot and accidentally loaded a QML component that’s only available in the commercial Qt build. Should be sorted now, let me know how it runs on your end. By the way, if we get this working smoothly, it might be worth putting together a wiki entry or even an example project with step-by-step instructions on building and running Serial Studio on the Raspberry Pi. Could save a ton of people from this headache down the line. Some years ago I wrote a script to do that, but at that time Serial Studio was based on Qt 5. |
Beta Was this translation helpful? Give feedback.
-
|
Hi @hydrochloriic, just to let you know that arm64 builds of Serial Studio are now available as AppImages in the continuous builds. Not sure how well it’ll perform on a Raspberry Pi 3, but at least you can skip the compile step. I’ll also be adding an optional toggle in the preferences to force software rendering for systems without a GPU. Here’s a screenshot of Serial Studio running inside an Ubuntu 24.04 arm64 VM: Please let me know if it works on your end! |
Beta Was this translation helpful? Give feedback.


Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Hello!
For reasons I can barely explain (low power telemetry display for racing), I thought it would be a good idea to try to build v3.0.6 from the source on a Raspberry Pi (5, but started with a 3B+) inside Ubuntu 25.04. Originally I was attempting in Raspbian but Debian doesn't yet have some of the Qt packages in Debian 12, so eventually required a switch to Ubuntu. After that, this was a huge hassle in getting the proper Qt libraries, plugins, etc. Once those hurdles were cleared, I started having issues with includes. Finally moving files around and correcting a line that was wrong in the CSV output... The build failed. This time it was due to an unsupported sse2 instruction. I gambled, disabled the sse2 flag in cmakelists, and sent it.
Shockingly, it built. Unsurprisingly however, it doesn't run. Seems that the QQmlApplicationEngine is failing to create the main window, based on the gdb output. I'm already quite out of my depth (enough familiarity with C on embedded hardware I could try things but this is beyond my norm!) and at this point the original purpose is beyond when I was hoping to have it ready for. Of course I'm stubborn and still want it to work... 😄
Here is the output from gdb, in case anyone has some ideas, but I'm running out of steam now.
Beta Was this translation helpful? Give feedback.
All reactions