Xiaomi Flash Tool Error No Such File Or Directory

0 views
Skip to first unread message

Celedonio Miranda

unread,
Aug 5, 2024, 10:25:23 AM8/5/24
to instabodag
Ineed to include library file which is in a different directory than the sketch file. I am getting this error: No such file or directory. I do not know why Arduino IDE do not see this file. The path is correct and it should work! It looks like they have an error in Arduino code. I am using Arduino IDE 1.8.19

I do not know why the developers of the Arduino IDE decided that. C/C++ solution exists for this and is flawless so why not use it? I do not think it is any easier for beginners - seeing how many threads there are on the internet about this problem.


the .ino sketch files are not the final files that get compiled. They get pre-processed (combined together in a .cpp file, the main() function is injected, prototypes for forward declarations are added, libraries are processed to find the most suitable candidate when you have multiple ones with the same .h etc).


I understand the process but do not see the benefit of this - only limitation. I mean both (absolute and relative path) should work together without problem. The compilation has nothing to do with it - even if the Arduino compilation will be performed on the moon, the local link to the external file must work anywhere.


I do not understand why Arduino IDE do not change relative paths to absolute first, than copy the sketch into temporary directory and ... MAGIC ... all works. I see it as a bug that has no reason to exist.


Many years ago, I was one of the people swept in the hope and euphoria that Ubuntu Phone would makeit big, and become a respectable rival to the established players. I even ran a contest, whereby readers of me site could try to win anUbuntu Phone - this was meant to be Edge, alas, that didn't happen. Long story short, I did use thephone for a while, but then it turned out to be somewhat of a chore, and after a while, I turned my Ubuntu Phone into an Android one. Firmware flash, done. However, even so, apartfrom occasionally powering it on to test connectivity as part of my Linux reviews, I wasn't reallyusing the Aquaris for anything serious. The Android operating system does offer more functionality thanUbuntu Phone did, but with an old image and lackluster performance, the Aquaris slid into obscurity.But not into oblivion.


I kept thinking about it now and then, how it got better and more refined over time, how it was quite useful with elderly folks, and that it had charm and soul that go beyondthe sum of its pixels and lines of code. As luck would have it, just a few days ago, I noticed theannouncement from the UBports team, which had picked up development and maintenance since the officialproject was axed, that they had released a new update - Ubuntu Touch OTA-12. So I thought, what thehell, let's rev the Aquaris one more time.


To get OTA-12, one must have a running (and supported) Ubuntu Phone. If you happen to have Android,then you must first "unlock" the phone by installing an old Android image, and then upgrade the phoneto OTA-12. The latter can be done conveniently with the official UBports installer software. The formerrequires a separate firmware flashing utility.


So you remember what I had to do last time? I had to use the SP Flash Tool ... erm, tool. I had todo the same thing here. The official UBports documentation outlineswhat I had to do: grab the ROM image, install SP Flash Tool, upgrade the phone, then set up UBportsInstaller, and upgrade the phone once more - to OTA-12.


I won't go into too many details, but the issues that were true four years ago still apply. SP FlashTool wouldn't start on various flavors of Debian or Ubuntu. It was complaining - alternating betweenmissing libpng and segfaults caused by errors in libQtGui.so.4 library.


I tried to solve the issue in many ways. I tried what worked for me back with the M10 tablet and E4.5 later on, which was to manually installthe libpng deb. This didn't work. The package could not be installed, at all.


I then extracted the library, and added it to the LD_LIBRARY_PATH - btw, the flash_tool.sh scriptthat runs the flash utility is a shell script that sets up the environment for the actual software. Butthis didn't help either.


Now, I could finally proceed. This was a fairly straightforward process. The biggest issue was toget to the Aquaris bootloader - the installer instructions aren't correct. You need to press the VolumeDown and power button until the phone cycles (red light turns on and off), and then you need to releaseonly the power button. And the arrow animations while the firmwareimage is being written to the device are annoying - you can turn them off.


My Aquaris booted just fine, and after about a minute or two, I had the Ubuntu Touch first-run setupload. I created my account (just a name, no email or number needed), and that's pretty much that. Timeto explore.


The new Ubuntu Touch is based on 16.04 (Xenial). Visually, things are similar to the old version,but then, there are also some fresh touches and improvements. Most notably, Unity8 work. The UI is alsomore responsive than it was in the past, and it's also significantly faster than Android on AquarisE4.5. As this is a low-end device, every little bit counts.


I have to say the interface is quite pleasant. Less rounded than it was - which is a good thing.More square angles, more stackenblochen. The system settings cover all the basics, but if you're usedto Android, things will look super simple and bare. The one thing that is missing - device encryption.The rest is there, easy and simple to access and use.


Now, the one cardinal issue that OTA-12 cannot solve is the lack of support for the ecosystem. Therejust aren't enough high-profile, mainstream applications available to make this community-supportedUbuntu Phone relevant in the modern world. The browser has been revamped, so it does the job well, andthe utilities that are bundled by default also function well. Again, you get a broad improvement acrossthe entire spectrum. But this just isn't enough to dent the need pyramid of the general user.


I tried searching for something that I'd easily identify - and there really wasn't much. Forinstance, Firefox or VLC aren't there. For navigation, you have Pure Maps and uNav, but these aren'tnecessarily your first choice. This is a huge limiting factor, and it remains without a straightforwardanswer in 2020. Then again, I knew this when I started this fun endeavor. This was all meant to be amoment of simple, innocent joy.


You're not entirely locked in the past. You can hook up various accounts into your Ubuntu Touchsystem, including Evernote, Nextcloud, generic calDAV (not sure what this is), ownCloud, and Google.This isn't an overwhelming set, but it's not bad either. You can also import contacts from a Googleaccount. Now, if you recall my contact import saga from Lumia 950 to Motorola One Zoom, then you will realize that OTA-12 offersa fairly reasonable set here.


OTA-12 comes with Libertine, a container-based solution that lets you run standard Armhf-basedsoftware from Xenial repositories, intended for the ordinary Ubuntu desktop. I thought this would be agood way to replenish my app stock, and work around the dearth of software in OpenStore.


Unfortunately, this didn't work - my greatest disappointment throughout this review. I tried toinstall VLC, and after a few minutes, the installation failed. Firefox setup would start, fail and thenstart again, in a loop. In the end, I had to open the terminal application and manually delete thecontainers. I got no app installed or configured. If this ever works reliably, robustly, it wouldbe an awesome thing.


I'm happy with my little experiment, even if it serves no higher purpose. Now, on my M10 tablet, Iwon't repeat the exercise. It's a fairly capable device, and there, Android 6 does a pretty good job - a marked improvement over Android 5that was on Aquaris E4.5. Indeed, Android has significantly improved over time. But on the phone,OTA-12 works quite well, and offers a fast if limited experience. But for novelty sake, I'm going totake this as far as it goes, either the UBports project or the lifespan of the device.


The community-supported continuation of the Ubuntu Phone effort - UBports Ubuntu Touch - is acommendable project. Given its resources, it manages to deliver a fairly robust and fun product, withOTA-12 as its latest incarnation. Solid, usable - to an extent, but also secure, updated and with solidprivacy. If you need a basic smartphone, this is a solution that offers a reasonable compromise. I'venever really expected to be using Ubuntu Touch again, but now I'm glad I did this, if only to see howfar one's passion can stretch. But on a serious, emotionless note, really, if you don't need much, ifyou're not hooked into social media, and if your hardware supports the OTA-12 image, you might want togive this a try. If anything, it's more mature than it ever was, and in the privacy-focused world, itmakes perfect sense. From Nostalgia Avenue, Dedoimedo out.


If your device is a smartphone, tablet, or other embedded device, you should be able to retrieve boot logs by attaching it to your PC and accessing the "PMOS_LOGS" storage device. Please see the README file for information on opening a new issue. You may also find some of the following tips useful. The most likely causes of boot failure are a bug or regression due to a kernel upgrade or a change to the initramfs, or a corruption issue during flashing. In the former case please do the following:


3. If you're encountering this failure on your first boot, try re-flashing and double checking the installation instructions for your device. If flashing via fastboot, use the "fasboot reboot" command rather than rebooting via the device controls - this will ensure that any pending writes are correctly flushed.


4. If your device still doesn't boot, open a new issue and provide as much information as you can about the steps you took prior to encountering the problem (SEE THE LIST OF IMPORTANT INFORMATION BELOW). This will help the developers a lot to properly reproduce and debug the issue. postmarketOS is run by volunteers largely in their free time, and it can be time consuming to have to go back and forth to get the necessary information.

3a8082e126
Reply all
Reply to author
Forward
0 new messages