| 
		
		
	 | 
	
	 I was able to build on windows, which is good, but the result is so slow as to be unusable.  Over ten minutes to load a volume as shown below. 
import datetime; start = datetime.datetime.now(); loadVolume('c:/tmp/CT-chest.nrrd'); end = datetime.datetime.now(); print(end-start) 
True 
0:10:20.417000 
 
 
 
If I stop in the debugger while the load is taking place, there are many stack traces like the following.  It appears that every shared library module is registering each of the IO factory items so that there is a huge number to iterate through. 
ntdll.dll!0000000076f12d27()    
[Frames below may be incorrect and/or missing, no symbols loaded for ntdll.dll] 
ntdll.dll!0000000076f218e2()    
ntdll.dll!0000000076f1413d()    
ntdll.dll!0000000076f89bd9()    
ntdll.dll!0000000076f2dbc0()    
ntdll.dll!0000000076f1413d()    
kernel32.dll!0000000076ab300a()      
msvcr90d.dll!_free_base(void  pBlock=0x00000000356dcc50)  Line 109 + 0x14 bytes    C 
msvcr90d.dll!_free_dbg_nolock(void  pUserData=0x00000000356dcc80, int nBlockUse=1)  Line 1428  C++ 
msvcr90d.dll!_free_dbg(void  pUserData=0x00000000356dcc80, int nBlockUse=1)  Line 1258 + 0xe bytes C++ 
msvcr90d.dll!operator delete(void  pUserData=0x00000000356dcc80)  Line 54 + 0x12 bytes C++ 
msvcp90d.dll!std::allocator<unsigned short>::deallocate(unsigned short  _Ptr=0x00000000356dcc80, unsigned int64 formal=32)  Line 147    C++ 
msvcp90d.dll!std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Tidy(bool _Built=true, unsigned __int64 _Newsize=0)  Line 2168 C++ 
msvcp90d.dll!std::basic_string<char,std::char_traits<char>,std::allocator<char> >::~basic_string<char,std::char_traits<char>,std::allocator<char> >()  Line 916 + 0xf bytes   C++ 
ITKCommon-4.3.dll!itk::ObjectFactoryBase::CreateObject(const char  itkclassname=0x0000000031fc9e50)  Line 654  C++ 
ITKCommon-4.3.dll!itk::ObjectFactoryBase::CreateInstance(const char  itkclassname=0x0000000031fc9e50)  Line 136 + 0x3b bytes   C++ 
BRAINSDemonWarpLib.dll!itk::ObjectFactory<itk::GDCMImageIO>::Create()  Line 60 + 0x22 bytes  C++ 
BRAINSDemonWarpLib.dll!itk::GDCMImageIO::New()  Line 95 + 0x41 bytes    C++ 
BRAINSDemonWarpLib.dll!itk::CreateObjectFunction<itk::GDCMImageIO>::CreateObject()  Line 70 + 0x43 bytes C++ 
ITKCommon-4.3.dll!itk::ObjectFactoryBase::CreateAllObject(const char  itkclassname=0x000007fee8f58310)  Line 677 + 0x45 bytes  C++ 
ITKCommon-4.3.dll!itk::ObjectFactoryBase::CreateAllInstance(const char  itkclassname=0x000007fee8f58310)  Line 158 + 0x3e bytes    C++ 
vtkITK.dll!itk::ImageIOFactory::CreateImageIO(const char  path=0x00000000356c36d0, itk::ImageIOFactory::FileModeType mode=ReadMode)  Line 29 + 0x15 bytes  C++ 
vtkITK.dll!itk::ImageFileReader<itk::Image<float,3>,itk::DefaultConvertPixelTraits<float> >::GenerateOutputInformation()  Line 116 + 0x35 bytes    C++ 
ITKCommon-4.3.dll!itk::ProcessObject::UpdateOutputInformation()  Line 1330  C++ 
vtkITK.dll!vtkITKArchetypeImageSeriesReader::ExecuteInformation()  Line 441 C++ 
vtkFiltering.dll!vtkSource::ProcessRequest(vtkInformation  request=0x000000002fddeb60, vtkInformationVector   inputVector=0x0000000000000000, vtkInformationVector  outputVector=0x00000000356aeb60)  Line 527  C++ 
vtkFiltering.dll!vtkExecutive::CallAlgorithm(vtkInformation  request=0x000000002fddeb60, int direction=1, vtkInformationVector   inInfo=0x0000000000000000, vtkInformationVector  outInfo=0x00000000356aeb60)  Line 747 + 0x39 bytes    C++ 
vtkFiltering.dll!vtkDemandDrivenPipeline::ExecuteInformation(vtkInformation  request=0x000000002fddeb60, vtkInformationVector   inInfoVec=0x0000000000000000, vtkInformationVector  outInfoVec=0x00000000356aeb60)  Line 496    C++ 
vtkFiltering.dll!vtkStreamingDemandDrivenPipeline::ExecuteInformation(vtkInformation  request=0x000000002fddeb60, vtkInformationVector   inInfoVec=0x0000000000000000, vtkInformationVector  outInfoVec=0x00000000356aeb60)  Line 375 + 0x25 bytes  C++ 
vtkFiltering.dll!vtkDemandDrivenPipeline::ProcessRequest(vtkInformation  request=0x000000002fddeb60, vtkInformationVector   inInfoVec=0x0000000000000000, vtkInformationVector  outInfoVec=0x00000000356aeb60)  Line 242 + 0x22 bytes   C++ 
vtkFiltering.dll!vtkStreamingDemandDrivenPipeline::ProcessRequest(vtkInformation  request=0x000000002fddeb60, vtkInformationVector   inInfoVec=0x0000000000000000, vtkInformationVector  outInfoVec=0x00000000356aeb60)  Line 301   C++ 
vtkFiltering.dll!vtkDemandDrivenPipeline::UpdateInformation()  Line 412 C++ 
vtkFiltering.dll!vtkStreamingDemandDrivenPipeline::Update(int port=0)  Line 312 + 0x13 bytes    C++ 
vtkFiltering.dll!vtkSource::Update()  Line 137  C++ 
MRMLCore.dll!vtkMRMLVolumeArchetypeStorageNode::ReadDataInternal(vtkMRMLNode  refNode=0x0000000032397180)  Line 350 + 0x3e bytes   C++ 
MRMLCore.dll!vtkMRMLStorageNode::ReadData(vtkMRMLNode  refNode=0x0000000032397180, bool temporary=false)  Line 1089 + 0x21 bytes   C++ 
vtkSlicerVolumesModuleLogic.dll!vtkSlicerVolumesLogic::AddArchetypeVolume(const std::list<ArchetypeVolumeNodeSet (cdecl)(std::basic_string<char,std::char_traits<char>,std::allocator<char> > &,vtkMRMLScene ,int),std::allocator<ArchetypeVolumeNodeSet (cdecl)(std::basic_string<char,std::char_traits<char>,std::allocator<char> > &,vtkMRMLScene ,int)> > & volumeRegistry=[7](0x000007fed1942ec8 anonymous namespace'::MultiVolumeNodeSetFactory(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > & ptr64,class vtkMRMLScene * ptr64,int),0x000007fed63210aaanonymous namespace'::DiffusionWeightedVolumeNodeSetFactory(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > & ptr64,class vtkMRMLScene  ptr,...), const char  filename=0x000000000434c6f8, const char  volname=0x0000000031d9ee48, int loadingOptions=0, vtkStringArray  fileList=0x0000000000000000)  Line 535 + 0x41 bytes   C++ 
vtkSlicerVolumesModuleLogic.dll!vtkSlicerVolumesLogic::AddArchetypeVolume(const char  filename=0x000000000434c6f8, const char  volname=0x0000000031d9ee48, int loadingOptions=0, vtkStringArray  fileList=0x0000000000000000)  Line 473  C++ 
qSlicerVolumesModule.dll!qSlicerVolumesIO::load(const QMap<QString,QVariant> & properties={...})  Line 157 + 0xab bytes  C++ 
qSlicerBaseQTCore.dll!qSlicerCoreIOManager::loadNodes(const QString & fileType={...}, const QMap<QString,QVariant> & parameters={...}, vtkCollection  loadedNodes=0x0000000032350b80)  Line 321 + 0x1e bytes    C++ 
qSlicerBaseQTGUI.dll!qSlicerIOManager::loadNodes(const QString & fileType={...}, const QMap<QString,QVariant> & parameters={...}, vtkCollection  loadedNodes=0x0000000032350b80)  Line 320 + 0x26 bytes C++ 
qSlicerBaseQTGUI.dll!qSlicerIOManager::qt_static_metacall(QObject  _o=0x0000000008e07b90, QMetaObject::Call _c=InvokeMetaMethod, int _id=16, void   _a=0x0000000000b38340)  Line 113 + 0x37 bytes    C++ 
qSlicerBaseQTGUI.dll!qSlicerIOManager::qt_metacall(QMetaObject::Call _c=InvokeMetaMethod, int _id=16, void   _a=0x0000000000b38340)  Line 156 C++ 
PythonQt.dll!PythonQtCallSlot(PythonQtClassInfo  classInfo=0x00000000045d2710, QObject  objectToCall=0x0000000008e07b90, _object  args=0x000000000b71c630, bool strict=true, PythonQtSlotInfo  info=0x000000002c3ba140, void  firstArgument=0x0000000000000000, _object   pythonReturnValue=0x0000000000b38718, void   directReturnValuePointer=0x0000000000000000)  Line 171 + 0x3c bytes C++ 
PythonQt.dll!PythonQtSlotFunction_CallImpl(PythonQtClassInfo  classInfo=0x00000000045d2710, QObject  objectToCall=0x0000000008e07b90, PythonQtSlotInfo  info=0x000000002c3ba140, _object  args=0x000000000b71c630, _object  formal=0x0000000000000000, void  firstArg=0x0000000000000000, void   directReturnValuePointer=0x0000000000000000)  Line 312 + 0x51 bytes  C++ 
PythonQt.dll!PythonQtMemberFunction_Call(PythonQtSlotInfo  info=0x000000002c3ba140, _object  m_self=0x000000000b6e5db0, _object  args=0x000000000b71c630, _object  kw=0x0000000000000000)  Line 250 + 0x5a bytes    C++ 
PythonQt.dll!PythonQtSlotFunction_Call(_object  func=0x00000000072915c8, _object  args=0x000000000b71c630, _object  kw=0x0000000000000000)  Line 239 C++ 
python26.dll!PyObject_Call(_object  func=0x0000000000000000, _object  arg=0x0000000000000003, _object  kw=0x000000000b71c630)  Line 2493 C 
python26.dll!do_call(_object  func=0x0000000000000003, _object    pp_stack=0x0000000000000001, int na=120133064, int nk=11767464)  Line 3968 + 0xe bytes    C 
python26.dll!call_function(_object    pp_stack=0x0000000000000001, int oparg=131)  Line 3773 + 0x11 bytes    C 
python26.dll!PyEval_EvalFrameEx(_frame  f=0x000000000bd45a88, int throwflag=0)  Line 2416  C 
python26.dll!PyEval_EvalCodeEx(PyCodeObject  co=0x0000000007201ea0, _object  globals=0xcccccccc00000004, _object  locals=0x0000000000000004, _object   args=0x0000000000000004, int argcount=4, _object   kws=0x000000000bd45a38, int kwcount=0, _object   defs=0x0000000007201ea0, int defcount=2, _object  closure=0x0000000000000000)  Line 3000 + 0xf bytes   C 
python26.dll!fast_function(_object  func=0x0000000000000004, _object    pp_stack=0x0000000000000001, int n=119160616, int na=-858993460, int nk=0)  Line 3850   C 
python26.dll!call_function(_object    pp_stack=0x0000000000000001, int oparg=131)  Line 3771 + 0x16 bytes    C 
python26.dll!PyEval_EvalFrameEx(_frame  f=0x000000000bd45878, int throwflag=0)  Line 2416  C 
python26.dll!PyEval_EvalCodeEx(PyCodeObject  co=0x0000000007201ee0, _object  globals=0x0000000000000001, _object  locals=0x0000000000000005, _object   args=0x0000000000000001, int argcount=1, _object   kws=0x000000000bd45808, int kwcount=2, _object   defs=0x0000000007201ee0, int defcount=2, _object  closure=0x0000000000000000)  Line 3000 + 0xf bytes   C 
python26.dll!fast_function(_object  func=0x0000000000000001, _object    pp_stack=0x0000000000000001, int n=119583464, int na=504066982, int nk=2)  Line 3850    C 
python26.dll!call_function(_object    pp_stack=0x0000000000000001, int oparg=131)  Line 3771 + 0x16 bytes    C 
python26.dll!PyEval_EvalFrameEx(_frame  f=0x000000000bd45658, int throwflag=198465112)  Line 2416  C 
python26.dll!fast_function(_object  func=0x0000000000000003, _object    pp_stack=0x000000000b704c08, int n=198093512, int na=112, int nk=0)  Line 3837  C 
python26.dll!call_function(_object    pp_stack=0x0000000000000001, int oparg=131)  Line 3771 + 0x16 bytes    C 
python26.dll!PyEval_EvalFrameEx(_frame  f=0x000000000bd44e18, int throwflag=0)  Line 2416  C 
python26.dll!PyEval_EvalCodeEx(PyCodeObject  co=0x0000000000000000, _object  globals=0x0000000000000001, _object  locals=0x0000000000000000, _object   args=0x0000000000000000, int argcount=1, _object   kws=0x0000000000000000, int kwcount=0, _object   defs=0x0000000000000000, int defcount=0, _object  closure=0x0000000000000000)  Line 3000 + 0xf bytes   C 
python26.dll!function_call(_object  func=0x0000000000000000, _object  arg=0x000000000b6f6da0, _object  kw=0x0000000000000000)  Line 529 + 0x3c bytes C 
python26.dll!PyObject_Call(_object  func=0x000000000b6f6da0, _object  arg=0x000000000bcea4a8, _object  kw=0x0000000000000000)  Line 2493 C 
python26.dll!instancemethod_call(_object  func=0x000000000b6ffa68, _object  arg=0x0000000002bf1048, _object  kw=0x0000000000000000)  Line 2580   C 
python26.dll!PyObject_Call(_object  func=0x0000000002bf1048, _object  arg=0x0000000000b3a8a8, _object  kw=0x000000000b6ffa68)  Line 2493 C 
python26.dll!PyEval_CallObjectWithKeywords(_object  func=0x0000000004446d20, _object  arg=0x0000000000000001, _object  kw=0x0000000000000001)  Line 3620 C 
PythonQt.dll!PythonQtSignalTarget::call(_object  callable=0x000000000b6ffa68, const PythonQtMethodInfo  methodInfos=0x0000000004446d20, void   arguments=0x0000000000b39d70, bool skipFirstArgumentOfMethodInfo=false)  Line 124 + 0x13 bytes   C++ 
PythonQt.dll!PythonQtSignalTarget::call(void   arguments=0x0000000000b39d70)  Line 55 + 0x2e bytes    C++ 
PythonQt.dll!PythonQtSignalReceiver::qt_metacall(QMetaObject::Call c=InvokeMetaMethod, int id=4, void   arguments=0x0000000000b39d70)  Line 261   C++ 
QtCored4.dll!QMetaObject::metacall(QObject  object=0x000000002fc293a0, QMetaObject::Call cl=InvokeMetaMethod, int idx=4, void   argv=0x0000000000b39d70)  Line 246   C++ 
QtCored4.dll!QMetaObject::activate(QObject  sender=0x000000002fb007c0, const QMetaObject  m=0x000000006ab6bf68, int local_signal_index=2, void   argv=0x0000000000b39d70)  Line 3566 + 0x49 bytes   C++ 
QtGuid4.dll!QAbstractButton::clicked(bool _t1=false)  Line 221  C++ 
QtGuid4.dll!QAbstractButtonPrivate::emitClicked()  Line 550 C++ 
QtGuid4.dll!QAbstractButtonPrivate::click()  Line 541 + 0xa bytes   C++ 
QtGuid4.dll!QAbstractButton::mouseReleaseEvent(QMouseEvent  e=0x0000000000b3af58)  Line 1124   C++ 
PythonQt.dll!PythonQtShell_QPushButton::mouseReleaseEvent(QMouseEvent  e=0x0000000000b3af58)  Line 10330   C++ 
QtGuid4.dll!QWidget::event(QEvent  event=0x0000000000b3af58)  Line 8372    C++ 
QtGuid4.dll!QAbstractButton::event(QEvent  e=0x0000000000b3af58)  Line 1083    C++ 
QtGuid4.dll!QPushButton::event(QEvent  e=0x0000000000b3af58)  Line 684 C++ 
PythonQt.dll!PythonQtShell_QPushButton::event(QEvent  e=0x0000000000b3af58)  Line 9958 C++ 
QtGuid4.dll!QApplicationPrivate::notify_helper(QObject  receiver=0x000000002fb007c0, QEvent  e=0x0000000000b3af58)  Line 4551 + 0x15 bytes    C++ 
QtGuid4.dll!QApplication::notify(QObject  receiver=0x000000002fb007c0, QEvent  e=0x0000000000b3af58)  Line 4094 + 0x51 bytes  C++ 
QtCored4.dll!QCoreApplication::notifyInternal(QObject  receiver=0x000000002fb007c0, QEvent  event=0x0000000000b3af58)  Line 915 + 0x26 bytes  C++ 
QtCored4.dll!QCoreApplication::sendSpontaneousEvent(QObject  receiver=0x000000002fb007c0, QEvent  event=0x0000000000b3af58)  Line 234 + 0x4c bytes    C++ 
QtGuid4.dll!QApplicationPrivate::sendMouseEvent(QWidget  receiver=0x000000002fb007c0, QMouseEvent  event=0x0000000000b3af58, QWidget  alienWidget=0x000000002fb007c0, QWidget  nativeWidget=0x000000002dbd2670, QWidget  * buttonDown=0x000000006aea7340, QPointer<QWidget> & lastMouseReceiver={...}, bool spontaneous=true)  Line 3160 + 0x16 bytes   C++ 
QtGuid4.dll!QETWidget::translateMouseEvent(const tagMSG & msg={...})  Line 3363 + 0x3f bytes    C++ 
QtGuid4.dll!QtWndProc(HWND  hwnd=0x00000000007e04e4, unsigned int message=514, unsigned int64 wParam=0, int64 lParam=9961711)  Line 1696 + 0x15 bytes    C++ 
user32.dll!0000000076dd9bd1() 
user32.dll!0000000076dd98da() 
QtCored4.dll!QEventDispatcherWin32::processEvents(QFlags<enum QEventLoop::ProcessEventsFlag>  flags=0x0000000000b3f220)  Line 810   C++ 
QtGuid4.dll!QGuiEventDispatcherWin32::processEvents(QFlags<enum QEventLoop::ProcessEventsFlag>  flags=0x0000000000b3f26c)  Line 1202 + 0x27 bytes   C++ 
QtCored4.dll!QEventLoop::processEvents(QFlags<enum QEventLoop::ProcessEventsFlag>  flags=0x0000000000b3f2e8)  Line 150  C++ 
QtCored4.dll!QEventLoop::exec(QFlags<enum QEventLoop::ProcessEventsFlag>  flags=0x0000000000b3f370)  Line 204 + 0x59 bytes  C++ 
QtCored4.dll!QCoreApplication::exec()  Line 1187 + 0x23 bytes   C++ 
QtGuid4.dll!QApplication::exec()  Line 3813 C++ 
SlicerApp-real.exe!`anonymous namespace'::SlicerAppMain(int argc=1, char   argv=0x0000000004308af0)  Line 183 + 0x6 bytes C++ 
SlicerApp-real.exe!WinMain(HINSTANCE__  hInstance=0x000000013f7f0000, HINSTANCE  hPrevInstance=0x0000000000000000, char  lpCmdLine=0x0000000000d2775d, int nShowCmd=1)  Line 202 + 0xe bytes   C++ 
SlicerApp-real.exe!tmainCRTStartup()  Line 574 + 0x42 bytes   C 
SlicerApp-real.exe!WinMainCRTStartup()  Line 399    C 
kernel32.dll!0000000076aa652d() 
ntdll.dll!0000000076eec521() 
 	 | 
		| 
		
		
	 | 
	
	 The attached file itk-v4-release-windows64-vs2008.txt contains the build log of the unfixed errors when building the current slicer trunk with itk4 enabled. 
The highlights of the remaining errors are: 
[1] DWIConvert missing header 
21>2>..........\BRAINSTools\DWIConvert\DWIConvert.cxx(32) : fatal error C1083: Cannot open include file: 'itkDCMTKSeriesFileNames.h': No such file or directory 
[2] qSlicerModelsModuleWidgets pythonqt link errors (4 like this): 
21>213>org_slicer_module_qSlicerModelsModuleWidgets_init.obj : error LNK2001: unresolved external symbol "public: virtual struct QMetaObject const * __cdecl PythonQtWrapper_qMRMLModelDisplayNodeWidget::metaObject(void)const " (?metaObject@PythonQtWrapper_qMRMLModelDisplayNodeWidget@@UEBAPEBUQMetaObject@@XZ) 
[3] qSlicerTractographyDisplayModuleWidgets pythonqt link errors (22 like this): 
21>219>org_slicer_module_qSlicerTractographyDisplayModuleWidgets_init.obj : error LNK2001: unresolved external symbol "public: virtual struct QMetaObject const * __cdecl PythonQtWrapper_qMRMLTractographyDisplayTreeView::metaObject(void)const " (?metaObject@PythonQtWrapper_qMRMLTractographyDisplayTreeView@@UEBAPEBUQMetaObject@@XZ) 
[4] qSlicerVolumeRenderingModuleWidgets pythonqt link errors (25 like this): 
21>224>   Creating library C:\pieper\s4\s4r\Slicer-build\lib\Slicer-4.2\qt-loadable-modules\Release\qSlicerVolumeRenderingModuleWidgetsPythonQt.lib and object C:\pieper\s4\s4r\Slicer-build\lib\Slicer-4.2\qt-loadable-modules\Release\qSlicerVolumeRenderingModuleWidgetsPythonQt.exp 
21>224>org_slicer_module_qSlicerVolumeRenderingModuleWidgets_init.obj : error LNK2001: unresolved external symbol "public: virtual struct QMetaObject const * __cdecl PythonQtWrapper_qSlicerCPURayCastVolumeRenderingPropertiesWidget::metaObject(void)const " (?metaObject@PythonQtWrapper_qSlicerCPURayCastVolumeRenderingPropertiesWidget@@UEBAPEBUQMetaObject@@XZ) 
[5] qSlicerVolumesModuleWidgets pythonqt link errors (19 like this): 
21>226>   Creating library C:\pieper\s4\s4r\Slicer-build\lib\Slicer-4.2\qt-loadable-modules\Release\qSlicerVolumesModuleWidgetsPythonQt.lib and object C:\pieper\s4\s4r\Slicer-build\lib\Slicer-4.2\qt-loadable-modules\Release\qSlicerVolumesModuleWidgetsPythonQt.exp 
21>226>org_slicer_module_qSlicerVolumesModuleWidgets_init.obj : error LNK2001: unresolved external symbol "public: virtual struct QMetaObject const * __cdecl PythonQtWrapper_qSlicerDiffusionTensorVolumeDisplayWidget::metaObject(void)const " (?metaObject@PythonQtWrapper_qSlicerDiffusionTensorVolumeDisplayWidget@@UEBAPEBUQMetaObject@@XZ) 
[6]  Two tclap errors in EMSegment 
21>277>C:\pieper\s4\s4r\SlicerExecutionModel\tclap\include\tclap/StdOutput.h(240) : error C2589: '(' : illegal token on right side of '::' 
21>277>C:\pieper\s4\s4r\SlicerExecutionModel\tclap\include\tclap/StdOutput.h(240) : error C2059: syntax error : '::' 
21>277>Generating Code... 
21>278>C:\pieper\s4\s4r\SlicerExecutionModel\tclap\include\tclap/StdOutput.h(240) : error C2589: '(' : illegal token on right side of '::' 
21>278>C:\pieper\s4\s4r\SlicerExecutionModel\tclap\include\tclap/StdOutput.h(240) : error C2059: syntax error : '::' 
21>278>Generating Code... 
21>278>Build log was saved at "file://c:\pieper\s4\s4r\Slicer-build\Modules\Loadable\EMSegment\CommandLineApplication\EMSegmentCommandLine.dir\Release\BuildLog.htm" 
21>278>EMSegmentCommandLine - 2 error(s), 0 warning(s) 
21>277>EMSegmentTransformToNewFormat.cxx 
[7] qSlicerEMSegmentModuleWidgets pythonqt link errors (7 like this): 
21>280>org_slicer_module_qSlicerEMSegmentModuleWidgets_init.obj : error LNK2001: unresolved external symbol "public: virtual struct QMetaObject const * __cdecl PythonQtWrapper_qSlicerEMSegmentWidget::metaObject(void)const " (?metaObject@PythonQtWrapper_qSlicerEMSegmentWidget@@UEBAPEBUQMetaObject@@XZ) 	 |