Q100234: NDK plug-in compatibility between different Nuke versions



This article explains the compatibility of Nuke Developer Kit (NDK) plug-ins between different versions of Nuke, and when NDK plug-ins will need to be recompiled.



The NDK is Nuke's low level C++ API. It lets Nuke developers build everything from image process operators, to Deep ops and custom op types. Since the API exports C++ symbols, it changes between major and minor Nuke releases. As such, it often requires recompilation of derived operators.

Any Nuke plug-ins compiled using the NDK C++ API will generally be compatible with all v-releases for the same branch of Nuke. If you compiled a plug-in for Nuke 13.1v1 for example, it would work with 13.1v1 to 13.1v4, but it wouldn't work with Nuke 13.0 releases or Nuke 13.2 releases, as the branch number has changed.

Although Nuke 13.1v1 still has a 'Nuke 13' name, there are enough changes under the hood that, in terms of Nuke's NDK plug-in API, it is a new major version compared to 13.0.  In the same way that plug-ins for Nuke 13.0 needed recompiling for Nuke 13.1 releases, your C++ plug-ins for Nuke 13.1 will need to be recompiled against the Nuke 13.2v1 NDK in order for them to work in Nuke 13.2v1.

This also applies to the Ocula plugin, which is also built against a specific Nuke release version.



Please visit the NDK Developer Guide and NDK Reference page for additional NDK information.

    We're sorry to hear that

    Please tell us why