Solved How do I compile a plug-in that is compatible with both R20 and R21

Hello, I compiled the "cinema4dsdk" project of R21SDK with vs2017 and r21_project_tool. The edited plug-in can be loaded in C4D_R21, but not in C4D_R20.Similarly, the same project that compiled the R20SDK with vs2015, r21_project_tool, cannot be loaded into C4D_R21. Does this mean that my plug-in must be compiled for R20 and R21, respectively?

Plugins are not binary compatible between R20 and R21, so you will indeed need to build for both releases separately.
Changes between R19 and R20 were obvious, and a different file extension was used as well. Whereas R21 and R20 use the same file extension for plugins, still the plugins are not interchangeable.

Additionally, should you build a plugin with the R21.026 SDK, this will load and run in R21.115. The opposite, however, building with R21.115 SDK will not run in R21.026. Not that this has anything to do with the differences between R20 and R21, but it's something I just wanted to point out.

This way of doing, simply let a person die!

Hi sean, thanks for reaching out us.

The broken forward compatibility between R20 and R21 is reported on Changes in R21.
With regard to backward binary compatibility, it has never been possible to run a plugin built against a more recent API and load on a previous Cinema 4D executable as reported on Portability and Compatibility.

Best, R.