I am having a few issues getting the entire toolchain working on macOS. Both my program and the DaisyToolchain works without issues on Windows.
I used the instructions on the “install.command” file using homebrew. Also followed the instructions on this thread for apple silicons.
Installation went fine and I appear to have arm-none-eabi-gcc installed correctly. However when I try to compile the Reverb example on the patch_sm folder I get this error. What am I missing here?
Can anyone please point me in the right direction.
I tried running the .pkg file both with shift click as well as getting past the “Apple could not verify “DaisyToolchain-macos-installer-x64-0.2.0.pkg” is free of malware that may harm your Mac or compromise your privacy.” portion. In both cases, the installer didn’t do anything on a Mac M4. This is when I noticed that there was homebrew way of installing. I switched to that instead.
I wonder if something with M4 leads to an issue. The team unfortunately doesn’t have access to M4 at the moment to test so hopefully other community members with M4 can join our troubleshooting. Could you tell us more about the issue with the .pkg installation route?
And this prompted the team to discuss more about including the homebrew instruction on the support site.
I got mine setup on an M4 Mac without any problems fwiw. I don’t remember needing to do anything other than following the official instructions but I barely know what I’m doing so it’s possible I got lucky!
I suspect the problem might be due to conflicts with existing arm-gcc packages installed via PlatformIO and other toolchains. When I inspected the package using pkgutil , I noticed that, for example, files for ocdutil are placed in /Library/DaisyToolChain/0.2.0 , whereas Homebrew installs packages in /opt/homebrew/ —a design choice aimed at maintaining consistency across versions by keeping everything outside of the standard Mac folders.
In either scenario, Homebrew instructions may be more suitable for some users than others. If the package is intended for individuals who aren’t comfortable with the command line, then building an Apple Silicon-specific and intel .pkgs with a real cert via code signing, notarizing and stapling may be the way to go :).
For what its worth the homebrew method of deploying lives comfortably with platformIO and other gcc’s.
We’re looking into potential compatibility issues with apple silicon, and the current distributed installer.
FWIW, the versioning for some of this is pretty confusing. So I can see how it sparked some confusion.
So, to clarify:
For the first few years of the Daisy Project we used the repo linked above, and tried to have a single set of tools with a shared version for both Mac and Windows.
This used some scripts to install things via homebrew on Mac, and had a folder of tools that would get added to the user’s PATH on Windows.
We have since moved to maintaining separate installers for each OS.
The current versions of those installers are:
Windows: 1.1.0
Mac: 0.2.0
Both of these still ship with the ARM GCC compiler at version 10-2020-q4-major.
I can confirm that on a Macbook Pro with an M3 Pro chip, the core tools (dfu-util, openocd, and arm-none-eabi-*) all function as expected.
Within the last year we have updated libDaisy, etc. to be compatible with the newer versions of the ARM compiler that were previously causing issues.
So we are planning an update to these toolchains in the near future, but the current installers for Windows and Mac should be working fine for the time being.
It is worth mentioning that now that Daisy has matured, and the tools it relies on have stabilized, the homebrew packages available for the tools are at versions that work with the Daisy (this was not the case 6 years ago when the project started).