Hi everyone. I’m trying to flash iodé 7.1 onto a Fairphone 6, manually. I’ve gotten through all the steps up to getting my phone in fastboot mode, where it has been for the past couple hours. I’ve been having a hell of a time trying to actually execute on the iode files themselves, through the macOS terminal. First it was “no such file or directory”, I seem to have figured that out, and now it’s “cannot execute binary file”, and labels the files as for linux. I know I’ve seen people reference installing this through macOS, did I miss something somewhere? For instance, in this post: Installing iodé to a Pixel 5 with a macos computer But I tried their solution and it still didn’t work. Would appreciate any helpful pointers, and thank you!
Hey. Did you get anywhere with this? I’ve arrived at the same place and don’t know what to try next, short of getting a linux or windows machine. Tried the installer on Parallels and Linux on Vmware with no success. Thanks
It really is just a .sh script so should work direct in macOS. Just make sure your terminal is in the directory and when you run ./flash-all.sh what is the output?
Hi Rik
Here is my terminal output:
iode-7.4-20260403-husky-fastboot % ./flash-all.sh
./flash-all.sh: line 20: linux/fastboot: cannot execute binary file
./flash-all.sh: line 21: linux/fastboot: cannot execute binary file
./flash-all.sh: line 22: linux/fastboot: cannot execute binary file
./flash-all.sh: line 24: linux/fastboot: cannot execute binary file
./flash-all.sh: line 25: linux/fastboot: cannot execute binary file
./flash-all.sh: line 27: linux/fastboot: cannot execute binary file
./flash-all.sh: line 28: linux/fastboot: cannot execute binary file
./flash-all.sh: line 32: linux/fastboot: cannot execute binary file
./flash-all.sh: line 33: linux/fastboot: cannot execute binary file
./flash-all.sh: line 34: linux/fastboot: cannot execute binary file
./flash-all.sh: line 35: linux/fastboot: cannot execute binary file
./flash-all.sh: line 36: linux/fastboot: cannot execute binary file
./flash-all.sh: line 38: linux/fastboot: cannot execute binary file
I’m using android platform tools v37.0.0 installed via Homebrew if that makes any difference
And I’m on an Intel Macbook tahoe 26.3.
I replaced the 3 files from /linux and the script progressed a bit, but still no joy.
Here’s the output:
Setting current slot to ‘a’ OKAY [ 0.086s]
Finished. Total time: 0.087s
Warning: skip copying bootloader_a image avb footer (bootloader_a partition size: 0, bootloader_a image size: 19179128).
Sending ‘bootloader_a’ (18729 KB) OKAY [ 0.076s]
Writing ‘bootloader_a’ (bootloader) Flashing pack version ripcurrent-16.4-14097582
(bootloader) flashing platform zuma
(bootloader) Validating partition ufs
(bootloader) Validating partition ufs
(bootloader) Validating partition partition:0
(bootloader) Validating partition partition:1
(bootloader) Validating partition partition:2
(bootloader) Validating partition partition:3
(bootloader) Validating partition bl1_a
(bootloader) Validating partition pbl_a
(bootloader) Validating partition bl2_a
(bootloader) Validating partition abl_a
(bootloader) Validating partition bl31_a
(bootloader) Validating partition tzsw_a
(bootloader) Validating partition gsa_a
(bootloader) Validating partition gsa_bl1_a
(bootloader) Validating partition ldfw_a
(bootloader) Validating partition gcf_a
(bootloader) Flashing partition ufs
(bootloader) Flashing partition ufs
(bootloader) Flashing partition partition:0
(bootloader) Flashing partition partition:1
(bootloader) Flashing partition partition:2
(bootloader) Flashing partition partition:3
(bootloader) Flashing partition bl1_a
(bootloader) Flashing partition pbl_a
(bootloader) Flashing partition bl2_a
(bootloader) Flashing partition abl_a
(bootloader) Flashing partition bl31_a
(bootloader) Flashing partition tzsw_a
(bootloader) Flashing partition gsa_a
(bootloader) Flashing partition gsa_bl1_a
(bootloader) Flashing partition ldfw_a
(bootloader) Flashing partition gcf_a
(bootloader) Loading sideload ufsfwupdate
OKAY [ 0.124s]
Finished. Total time: 0.205s
Rebooting into bootloader OKAY [ 0.000s]
Finished. Total time: 0.000s
< waiting for any device >
Warning: skip copying radio_a image avb footer (radio_a partition size: 0, radio_a image size: 112926860).
Sending ‘radio_a’ (110280 KB) OKAY [ 0.466s]
Writing ‘radio_a’ (bootloader) Flashing pack version g5300i-250909-251024-M-14326967
(bootloader) Flashing partition modem_a
OKAY [ 0.140s]
Finished. Total time: 0.614s
Rebooting into bootloader OKAY [ 0.000s]
Finished. Total time: 0.000s
< waiting for any device >
Erasing ‘avb_custom_key’ (bootloader) avb custom key: erase done
OKAY [ 0.026s]
Finished. Total time: 0.028s
Warning: skip copying avb_custom_key image avb footer (avb_custom_key partition size: 0, avb_custom_key image size: 1032).
Sending ‘avb_custom_key’ (1 KB) OKAY [ 0.001s]
Writing ‘avb_custom_key’ (bootloader) avb custom key: flash done
OKAY [ 0.036s]
Finished. Total time: 0.040s
Warning: metadata type is raw, but ext4 was requested for formatting.
mke2fs 1.47.2 (1-Jan-2025)
Creating filesystem with 16384 4k blocks and 16384 inodes
Allocating group tables: done
Writing inode tables: done
Creating journal (1024 blocks): done
Writing superblocks and filesystem accounting information: done
Warning: skip copying metadata image avb footer due to sparse image.
Sending ‘metadata’ (204 KB) OKAY [ 0.002s]
Writing ‘metadata’ OKAY [ 0.007s]
Finished. Total time: 0.036s
Erasing ‘metadata’ OKAY [ 0.008s]
Finished. Total time: 0.008s
Warning: userdata type is raw, but f2fs was requested for formatting.
dyld[6742]: Library not loaded: @rpath/libc++.dylib
Referenced from: <4C4C444E-5555-3144-A1A8-97220674BB3B> /Users/lentils/Downloads/iode-7.4-20260403-husky-fastboot/linux/make_f2fs
Reason: tried: ‘/Users/lentils/Downloads/iode-7.4-20260403-husky-fastboot/linux/libc++.dylib’ (no such file), ‘/Users/lentils/Downloads/iode-7.4-20260403-husky-fastboot/linux/lib64/libc++.dylib’ (no such file), ‘/Users/lentils/Downloads/iode-7.4-20260403-husky-fastboot/linux/../lib64/libc++.dylib’ (no such file), ‘/Users/lentils/Downloads/iode-7.4-20260403-husky-fastboot/linux/../../lib64/libc++.dylib’ (no such file), ‘/Users/lentils/Downloads/iode-7.4-20260403-husky-fastboot/linux/../../../lib64/libc++.dylib’ (no such file), ‘/Users/lentils/Downloads/iode-7.4-20260403-husky-fastboot/linux/libc++.dylib’ (no such file), ‘/Users/lentils/Downloads/iode-7.4-20260403-husky-fastboot/linux/lib64/libc++.dylib’ (no such file), ‘/Users/lentils/Downloads/iode-7.4-20260403-husky-fastboot/linux/../lib64/libc++.dylib’ (no such file), ‘/Users/lentils/Downloads/iode-7.4-20260403-husky-fastboot/linux/../../lib64/libc++.dylib’ (no such file), ‘/Users/lentils/Downloads/iode-7.4-20260403-husky-fastboot/linux/../../../lib64/libc++.dylib’ (no such file)
/Users/lentils/Downloads/iode-7.4-20260403-husky-fastboot/linux/make_f2fs failed with status -1
fastboot: error: Cannot generate image for userdata
Sending ‘frp’ (512 KB) OKAY [ 0.003s]
Writing ‘frp’ OKAY [ 0.006s]
Finished. Total time: 0.011s
fastboot: error: failed to open zip file ‘iode-7.4-20260403-husky-img.zip’: I/O error
Erasing ‘userdata’ OKAY [ 0.113s]
Finished. Total time: 0.114s
Rebooting into bootloader OKAY [ 0.000s]
Finished. Total time: 0.000s
< waiting for any device >
OKAY [ 0.179s]
Finished. Total time: 0.179s
Sort of flying blind here but the error is that it can’t find libc++.dylib anywhere, maybe that is due to the change in platform-tools versions, and it not being found in the path? But I am not sure how homebrew works in that regard, maybe you need to adjust your $PATH or load a lib or something? The permissions issue from before you replaced the executables may have been solved by using chmod +x linux/fastboot etc or maybe you need to run with sudo which I really don’t know how that happens on macOS (sorry I am quite outdated, I haven’t used it since it was OSX
)
Wait, I just realized you are not on a FP6 but on husky which is supported by the graphical installer. I think the easiest may be to use the Graphical Installer (download the Linux version, launch from a macOS terminal)? I know people have been successful with that.
Great, thanks Rik.
I’ll give those ideas a try
I really would not use homebrew to install the tools. Get them from https://developer.android.com/studio#command-line-tools-only as you would for Linux or Windows. I don’t know why LineageOS recommend homebrew for MacOS users but Android devlopers for Linux and Windows, but I have never had problems with the Android Developers versions.
Wohoo!
Got there.
For anyone on their first rodeo, like me and learning their way around command line, here’s what I did, after prompts from rik and reading this thread below, with lots of helpful info from rik and chrisrg
Macos Tahoe 26.3, Pixel 8 Pro, Husky.
I followed the Lineage instructions for sideloading using adb and fastboot and was successful installing the latest Lineage build. One brain fart moment for me was when booting into recovery, the instructions state that if the LineageOS logo isn’t displayed, you’ve loaded the wrong recovery image. On booting into recovery, the Google logo always displays first, so I thought it had gone wrong, even though the Lineage logo is shown after
.
Anyway, I reflashed the android 16 image (not sure if i needed to do this) and followed the Lineage instructions again but replaced the .zip file with the latest husky-ota.zip from here
I then got an SPL outdated error. So I went through the Lineage process but used the recovery files contained in the gitlab Iode husky-fastboot file.
Thanks for all the help, now to enjoy my spyware/bloatware free phone!
Hi Pete
Why do you advise against Hombrew?
I did use it in the end but I’m new to using command line and keeping my systems clean so any tips are greatly appreciated.
Homebrew is great if you need software where the developers don’t make a ‘native’ MacOS version. That is not the case for the Android command line tools. These tools comes from Android Developers and they ***do*** make a native MacOS version, as well as the Windows and Linux versions. I would always choose to use software direct from the developers rather than from some third party, no matter how good the reputation of the third party.
Thanks Pete
Makes sense. Less chance for errors.
Seems like a bit of an oxymoron to use a Google phone and Google software to degoogle my phone ![]()
Well you’re using Android, a Google OS ![]()