Sunday
Hello,
I am developing an ArchiCAD 29 Add-On for macOS, and I am unable to get it to load in ArchiCAD. I would appreciate guidance on the correct code signing approach for local development.
Environment
What works
The problem
The Add-On does not load reliably. After restarting ArchiCAD, the bundle is not loaded into process memory (verified with lsof), and all ExecuteAddOnCommand calls return error 4010 ("command not found").
We have tried the following signing approaches, none of which result in the Add-On loading consistently:
Observation
All Add-Ons that load successfully in our ArchiCAD installation are signed with Team ID 3E9E9FN277 (GRAPHISOFT) with flags=0x10000(runtime). Our bundle has a different Team ID and flags=0x0(none). We suspect macOS 26 Tahoe has introduced stricter validation requirements that prevent third-party Add-Ons from loading without a specific signing configuration.
Questions
Sunday
Have you seen any alerts from macOS explicitly stating that the add-ons have not been signed correctly? Or is the loading failure assumed to be caused by a signing problem?
If you're unsure, it can help to launch Archicad from Xcode and watch messages written by Archicad to the Console. Specifically, search for the names of the add-ons that fail to load in the console - Archicad is often more specific about by an add-on failed to load in that context.
Yes, you need to pay for Apple Developer membership if you want to sign add-ons.
I'm not aware of any blacklisting mechanism in Archicad.
I'm also not aware of any issue with loading add-ons in macOS 26.
Monday
Thank you for the previous response. I launched Archicad from Xcode as suggested and monitored the console output. While I did not find any explicit message about ExampleAddOn failing to load, I found this interesting error during startup:
cannot open file at line 51044 of [f0ca7bba1c]os_unix.c:51044: (2) open(/private/var/db/DetachedSignatures) - No such file or directory
The file /private/var/db/DetachedSignatures does not exist on my system. This appears to be a SQLite database that macOS uses for signature verification. Could this missing file be related to why Archicad is unable to validate and load our Add-On?
For reference, our Add-On is signed with an Apple Development certificate (Personal Team, free Apple ID), TeamIdentifier 696VQHZSKV, with flags=0x0(none) – no hardened runtime. All Add-Ons that load successfully in our installation are signed with TeamIdentifier 3E9E9FN277 (Graphisoft) with flags=0x10000(runtime).
Is there a supported workflow for loading locally developed Add-Ons without a paid Apple Developer membership, specifically on macOS 26 Tahoe?
Monday
Hi BFG,
Please try to codesign the add-on with hardened runtime:
--timestamp --options runtime
Best, Akos
Monday
Update: Hardened runtime signing works but Gatekeeper still rejects
Following Akos' suggestion, I signed the Add-On with --timestamp --options runtime. The signature now shows flags=0x10000(runtime) and codesign --verify --deep --strict passes with no errors.
However, spctl --assess still rejects the bundle, and Archicad crashes during GS::ModuleFile::Load() → APIAddOn::CheckEnvironment() with a "Data Abort byte read Translation fault".
The issue appears to be that I'm using an Apple Development certificate (free Personal Team), not a Developer ID Application certificate (requires paid Apple Developer Program).
Questions:
Tuesday
yesterday
Hi again, Thanks for all the suggestions and replies, very grateful. I figured out what caused the problems