Error building R25 macOS - TypeTraitExpr
-
Hello,
I added a little feature to my plugin, built it for R23 (which works on R24) and 2023, but am am unable to build the frameworks for R25.
The same plugin was built successfully for R23 with XCode 12
My R25 project is the same project sitting on my desktop since my last successful build. No new frameworks or anything.
I tried regenerating sources and projects, all the same error.
I always build thecinema4dsdk
project as a baseline to make sure everything is working, and it also gives the same error.my setup...
macOS 13.5.2
XCode 12 / 13
R25.015 / R25.121In file included from /Users/roger/Dev/C4D/SDK/C4DSDK/R25.121/frameworks/core.framework/source/maxon/weakref.cpp:2: In file included from ../source/maxon/weakrefservices.h:4: In file included from ../source/maxon/interfacebase.h:6: ../source/maxon/datatypebase.h:1828:57: error: cannot yet mangle expression type TypeTraitExpr template <typename T> Result<typename std::conditional<STD_IS_REPLACEMENT(same, T, Data) || (GetCollectionKind<T>::value == COLLECTION_KIND::ARRAY), T, typename ByValueParam<T>::type>::type> Get() const ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /Users/roger/Dev/C4D/SDK/C4DSDK/R25.121/frameworks/core.framework/source/maxon/weakref.cpp:1: In file included from ../source/maxon/weakref.h:4: In file included from ../source/maxon/atomictypes.h:4: In file included from ../source/maxon/private_atomic_core.h:8: In file included from ../source/maxon/apibase.h:67: ../source/maxon/utilities/compilerdetection.h:303:70: note: expanded from macro 'STD_IS_REPLACEMENT' #define STD_IS_REPLACEMENT(name, ...) STD_IS_REPLACEMENT_HELPER(__is_##name, __VA_ARGS__) ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ <scratch space>:140:1: note: expanded from here __is_same ^
-
Hey @rsodre,
Thank you for reaching out to us. As you can see yourself, what is failing there is building the
core.framework
, so your problem must lie in your build setup.MacOS 13.5.2 is not a good platform to build R25 plugins with, (you should be on Catalina or BigSur to build the universal binaries for R25-S26). I personally would say it is unlikely that the OS is the culprit here. But in the end, you must meet the platform requirements when things start to fail, as Apple could be doing something weird when you install such an old Xcode/compiler on such a modern OS.
The other things I would check:
- Are you sure you are building with the legacy build system?
- You said this an old project, can you go back in your version control and see if the old version does build?
- Have your tried replacing your frameworks with a 'fresh' batch from an R25.0
sdk.zip
, in case you somehow 'tarnished' your current ones?
You said that you already rebuild your solution with the project tool, so I'll leave that one out.
Cheers,
Ferdinand -
@ferdinand said in Error building R25 macOS - TypeTraitExpr:
Are you sure you are building with the legacy build system?
if you mean to ask if I'm using the maxon_api, I'm not. My plugin contains camera effects, post-processing, and tags.
You said this an old project, can you go back in your version control and see if the old version does build?
no, it doesn't.
but neither thecinema4dsdk
project buildsHave your tried replacing your frameworks with a 'fresh' batch from an R25.0 sdk.zip, in case you somehow 'tarnished' your current ones?
yes, my R25.015 environment was failing, then I created a new one with R25.121, and see the same errors happening, on my plugin and on the
cinema4dsdk
sample projectIt could be the OS.
This is the only difference from the last time I had to build it, in 2021, I stuck to Catalina for a long time, only upgraded recently.Anyway, my old macbook is requiring an upgrade for a long time. Will try Catalina on it...
-
@rsodre said in Error building R25 macOS - TypeTraitExpr:
@ferdinand said in Error building R25 macOS - TypeTraitExpr:
Are you sure you are building with the legacy build system?
if you mean to ask if I'm using the maxon_api, I'm not. My plugin contains camera effects, post-processing, and tags.
That isn't what @ferdinand meant, he meant have you changed the Xcode project settings to use the legacy build system. That was my immediate reaction on seeing the error you got. See this: https://developers.maxon.net/docs/cpp/2024_0_0/page_maxonapi_dev_macos.html
Steve
-
Ok, didn't know about that, will try.
But on Catalina, projects are building with XCode 11.
Installing XCode 12.4 right now to be able to make them universal.... -
Hey @rsodre,
yes, Steve is right, I meant the build system of Xcode, sorry, I could have been more precise here. Thanks @spedler for the clarification and the link. This is also why 13.5 is a bad OS to build for R25, because any Xcode that supports the legacy build system is not officially supported on it, you must use the usual hacks to get older Xcode versions to start.
One point I missed was:
- Are you sure you were using the correct project tool? Since you compile for R23, S24, R25, and 2023 you would have to use the R23 PT for R23 and the S24 one for S24, R25, and 2023.
Cheers,
Ferdinand -
Thanks for all the tips @ferdinand
The solution was Catalina + XCode 12.4