another question…due to the relocation of the OrthancFramework code in 1.7.2 all plugins fail, e.g. Orthanc-DicomWeb in CMakeLists.txt:54:
However, in Orthanc-1.7.2/OrthancFramework/Resources/ there is no directory Orthanc…
Unfortunately, all the plugins currently still need the Orthanc 1.7.1 source code to build.
I am progressively updating all of the plugins to introduce compatibility with the new file organization, but you’ll have to wait for new releases before being able to move to 1.7.2.
I went through refactoring Orthanc-DicomWeb to have it build with the
1.7.2 source code release. I got it building, but later in the process I
recognized that the plugin interface seems to have changed as well (e.g.
Orthanc::Logging doesn't need a context any more).
Should distributions stay on Orthanc 1.7.1 until the plugins got updated
to 1.7.2? Or can plugins which have been built against 1.7.1 sources
safely be used with an 1.7.2 Orthanc binary?
Yes, the plugins should still use Orthanc framework 1.7.1 until new releases are available.
The Orthanc framework 1.7.2 can now be built as a separate shared library in order to avoid duplicating the source code of Orthanc to build each plugin. Forthcoming releases of the plugins will be able to take advantage of this shared library.
The version of the Orthanc framework that is used by a plugin has nothing to do with the version of Orthanc that can run this plugin. The minimal version of Orthanc to run some plugin is given by the minimal version of the Orthanc SDK (i.e. the “OrthancCPlugin.h” header) that is used by this plugin.
For instance, the Orthanc Web viewer plugin embeds Orthanc framework 1.7.0, but is built against Orthanc SDK 0.9.5. This means that this plugin can run on any version of Orthanc >= 0.9.5.
I hope this clarifies things,