This repository contains a CMake template for Archicad Add-On Development. You can use it to generate native Visual Studio or XCode project or to develop an Add-On directly in Visual Studio Code without using any other environments.
- Download the CMake Template from here.
- Download the Archicad Add-On Development Kit from here.
- Generate the IDE project with CMake, and set the following variables:
AC_API_DEVKIT_DIR
: The root folder of the installed Archicad Add-On Development Kit. You can also set an environment variable with the same name so you don't have to provide this value during project generation.AC_ADDON_NAME
: (optional) The name of the project file and the result binary Add-On file (default is "ExampleAddOn").AC_ADDON_LANGUAGE
: (optional) The language code of the Add-On (default is "INT").
- To release your Add-On you have to modify the MDID in the "AddOnResources/RFIX/AddOnFix.grc" file.
Run these commands from the command line.
mkdir Build
cd Build
cmake -G "Visual Studio 15 2017" -A "x64" -DAC_API_DEVKIT_DIR="C:\API Development Kit 24.3009" ..
cd ..
Run these commands from the command line.
mkdir Build
cd Build
cmake -G "Xcode" -DAC_API_DEVKIT_DIR=/Applications/GRAPHISOFT\ ARCHICAD\ API\ DevKit\ 24.3009 ..
cd ..
- Install the "CMake Tools" extension for Visual Studio Code.
- Set the "AC_API_DEVKIT_DIR" environment variable to the installed Development Kit folder.
- Open the root folder in Visual Studio Code, configure and build the solution.
This template is tested with all Archicad versions starting from Archicad 23.
To use the Add-On in Archicad, you have to add your compiled .apx file in Add-On Manager. The example Add-On registers a new command into the Options menu. Please note that the example Add-On works only in the demo version of Archicad.
You can start Archicad in demo mode with the following command line commands:
- Windows:
ARCHICAD.exe -DEMO
- MacOS:
ARCHICAD\ 24.app/Contents/MacOS/ARCHICAD -demo
If you use the same source structure as the template, you probably won't have to modify anything in the project generation process.
- Multilanguage support (provide example for another localized version).
- The generated XCode source structure could be improved.