No load loadable modules of an extension after they have been installed from slicer extension catalog (Compiled Slicer 4.8.1 )

Operating system: Windows 10 64 bits
Slicer version: 4.8.1 (svn r26813)
Compiler: Microsoft Visual Studio Community 2015
Qt: 5.9.1

I’ve compiled the Slicer version 4.8.1 (svn 26813) without any errors and Slicer application works correctly. However if a extension is installed from Slicer extensions server, it is not showed in the menu “modules” and there are some errors:

  • Qt: Failed to extract plugin meta data from (each loadable modules in the extension)

On the other hand, If I compile the extension, and add the path in “additional module path” in menu “modules”, all loadable modules of the extension are loaded.

I have some questions:

  • If I’d like to add some new extensions (loadable modules) from the Slicer extension catalog in my compiled 3D Slicer, should I compile them?
  • If I’d like to use the install Slicer extension (extension server) in my compiled 3d Slicer, what environment should I set up? or is it impossible?

Thanks in advance.
Carlos Luque

Hi Carlos -

Right - for C++ shared libraries to be workable across builds you need to exactly match the compiler version and other settings described here (VS 2013 instead of 2015).

If you are already building your own slicer and your own extensions probably you could just make your own installers that would be compatible. Or you can submit your extension code and have it built on the factories so it would work with the slicer releases.

-Steve

Hello Steve,

Thanks for your response.

I have a new doubt:

  • If a new loadable module is designed, what Qt version should it support for the Slicer versions 4.8.1 and 4.9? Qt4 or Qt5 or both?

Thanks in advance,
Carlos Luque

Hi Carlos -

We’re in transition now - the current release 4.8.1 is still Qt4, but 4.9 (the nightly preview) and the upcoming 5.0 releases will use Qt5. It’s possible to make your code work with both, but if you are starting development now I’d suggest only supporting Qt5.

Best,
-Steve

Hello Steve,

Thanks for your help. They’re useful for us.

Best,
Carlos