License Delivery maintenance is expected to occur on Saturday, November 30, between 8 AM and 11 AM CET. This may cause a short 3-hours outage in which license-related tasks: license key upload, download, update, SSA validation, access to the license pool and Graphisoft ID authentication may not function properly. We apologize for any inconvenience.
Archicad C++ API
About Archicad add-on development using the C++ API.
SOLVED!

Difference between AC versions

Anonymous
Not applicable
Guys, can someone tell me what makes the difference between a plugin for AC22 and the same plugin for AC23, for example, what makes the plugin manager see this difference? If I have a plugin for AC22, do I have to change only the libraries in Support folder or something else (and of course align the API functions definition changes) and build the plugin in order to load it in AC23?

Edit: Sorry, it is asked in another topic with not very relevant title so I didn't read it.
1 ACCEPTED SOLUTION

Accepted Solutions
Solution
Tibor Lorantfy
Graphisoft Alumni
Graphisoft Alumni
n.mihaylov wrote:
I can not build it for Mac. I keep on getting 16 errors like this:

Undefined symbols for architecture x86_64:
"ODB::FieldType const& ODB::GetFieldType<GS::Guid>()", referenced from:
__GLOBAL__sub_I_ACAPlib.c in libACAP_STAT.a(ACAPlib.c.o)
Add ObjectDatabase.framework from Support/Frameworks to "External Frameworks and Libraries".

View solution in original post

5 REPLIES 5
Tibor Lorantfy
Graphisoft Alumni
Graphisoft Alumni
Each AddOn is compatible with only one ARCHICAD main version.
AddOns must be rebuilt for each ARCHICAD main versions. So if you have an Add-On for AC22, then it won't work for AC23.
But if you have the source of the Add-On and you download the API Development Kit 23, then you will be able to rebuild you Add-On for AC23.
n.mihaylov wrote:
If I have a plugin for AC22, do I have to change only the libraries in Support folder or something else (and of course align the API functions definition changes) and build the plugin in order to load it in AC23?
Yes, it's correct. Please change not only the libraries in Support folder, I recommend you to change the whole Support folder
Feel free to ask help, we will help!
Tibor Lorantfy
Graphisoft Alumni
Graphisoft Alumni
Read this blog post, it lists the changes of API functions, so it helps to align your code for AC23:
New API features in ARCHICAD 23
Anonymous
Not applicable
Thanks, Tibor!

I swapped the whole Support folder and aligned the API functions. Now I can build the Add-On for Windows but following the same steps I can not build it for Mac. I keep on getting 16 errors like this:

Undefined symbols for architecture x86_64:
"ODB::FieldType const& ODB::GetFieldType<GS::Guid>()", referenced from:
__GLOBAL__sub_I_ACAPlib.c in libACAP_STAT.a(ACAPlib.c.o)

I had the same errors in Windows and I removed and included again in the project my lib files but here on Mac this does not help for now...
Solution
Tibor Lorantfy
Graphisoft Alumni
Graphisoft Alumni
n.mihaylov wrote:
I can not build it for Mac. I keep on getting 16 errors like this:

Undefined symbols for architecture x86_64:
"ODB::FieldType const& ODB::GetFieldType<GS::Guid>()", referenced from:
__GLOBAL__sub_I_ACAPlib.c in libACAP_STAT.a(ACAPlib.c.o)
Add ObjectDatabase.framework from Support/Frameworks to "External Frameworks and Libraries".
Anonymous
Not applicable
Yeeeeeeeep! Build Succeeded
Thank you very much!