Hi Bruno,<br><br>Was there any progress on this front? I&#39;m interested in migrating my lab to VS2012 eventually so I will investigate later if the solution has not been found already.<br><br>Regards,<br><br clear="all">

<div>Ho Cheung<br>Research Assistant<br>Bio-Image Analytics Lab - University of Houston<br><a href="mailto:hocheung20@gmail.com" target="_blank">hocheung20@gmail.com</a><br>Cell: (775) 388-2368</div>
<br><br><div class="gmail_quote">On Mon, Feb 4, 2013 at 9:46 AM, Bruno Ronzani <span dir="ltr">&lt;<a href="mailto:bruno.ronzani@oyez.fr" target="_blank">bruno.ronzani@oyez.fr</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

Hey back,<br>
<br>
I&#39;m still stuck on it ! It&#39;s been days...<br>
<br>
Here is a sample code : <a href="http://codepad.org/jXtJdRnK" target="_blank">http://codepad.org/jXtJdRnK</a><br>
<br>
But look, this is from itksys/Configure.h ... why &quot;#if 0&quot; ?!<br>
<br>
Since there is no dll_export, i&#39;m not surprised that ITK is always<br>
built statically :(<br>
<br>
/******/<br>
<br>
/* Setup the export macro.  */<br>
#if 0<br>
# if defined(_WIN32) || defined(__CYGWIN__)<br>
#  if defined(itksys_EXPORTS)<br>
#   define itksys_EXPORT __declspec(dllexport)<br>
#  else<br>
#   define itksys_EXPORT __declspec(dllimport)<br>
#  endif<br>
# elif __GNUC__ &gt;= 4<br>
#  define itksys_EXPORT __attribute__ ((visibility(&quot;default&quot;)))<br>
# else<br>
#  define itksys_EXPORT<br>
# endif<br>
#else<br>
# define itksys_EXPORT<br>
#endif<br>
<br>
/*****/<br>
<br>
Thanks for you help,<br>
<br>
Bruno<br>
<div class="HOEnZb"><div class="h5"><br>
<br>
On Mon, Feb 4, 2013 at 2:46 PM, Bruno Ronzani &lt;<a href="mailto:bruno.ronzani@oyez.fr">bruno.ronzani@oyez.fr</a>&gt; wrote:<br>
&gt; I just tried to add the osgDB::fstream class to my project :<br>
&gt;<br>
&gt; - copying both osgDB/fstream.h and osgDB/fstream.cpp to my project<br>
&gt; source dir, adding them to my project.<br>
&gt; - removing all the &quot;DLL_EXPORT&quot; macros, but keeping the namespaces<br>
&gt;<br>
&gt; =&gt; compilation succeeds, without any link error.<br>
&gt;<br>
&gt; If that can help...<br>
&gt;<br>
&gt; Thanks again,<br>
&gt;<br>
&gt; Bruno<br>
&gt;<br>
&gt; On Mon, Feb 4, 2013 at 2:33 PM, Bruno Ronzani &lt;<a href="mailto:bruno.ronzani@oyez.fr">bruno.ronzani@oyez.fr</a>&gt; wrote:<br>
&gt;&gt; Hello Brad,<br>
&gt;&gt;<br>
&gt;&gt; Thank you for your answer.<br>
&gt;&gt;<br>
&gt;&gt; You are right, here is the osgDB/fstream header :<br>
&gt;&gt;<br>
&gt;&gt; <a href="https://github.com/openscenegraph/osg/blob/master/include/osgDB/fstream" target="_blank">https://github.com/openscenegraph/osg/blob/master/include/osgDB/fstream</a><br>
&gt;&gt;<br>
&gt;&gt; As you can see, osg cleanly redefines its own fstream, but that should<br>
&gt;&gt; not be a problem at all.<br>
&gt;&gt;<br>
&gt;&gt; I&#39;ve read several times this issue with this kind of answer:<br>
&gt;&gt;<br>
&gt;&gt; &quot;I have been using Visual Studio 2010 and fstreams and OSG DLLs with<br>
&gt;&gt; no issues at all. The only possibility is you are compiling with<br>
&gt;&gt; incompatible compiler options between OSG and your other library. All<br>
&gt;&gt; files must be compiled /MD(d) and of course compiled with Visual<br>
&gt;&gt; Studio 2010.&quot;<br>
&gt;&gt;<br>
&gt;&gt; My guess is I haven&#39;t really compiled ITK with /MD, don&#39;t you think ?<br>
&gt;&gt;<br>
&gt;&gt; If you want a very simple example, I can try to provide one.<br>
&gt;&gt;<br>
&gt;&gt; Thanks again,<br>
&gt;&gt;<br>
&gt;&gt; On Mon, Feb 4, 2013 at 1:56 PM, Bradley Lowekamp &lt;<a href="mailto:blowekamp@mail.nih.gov">blowekamp@mail.nih.gov</a>&gt; wrote:<br>
&gt;&gt;&gt; Hello,<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Are you using a CMake file to build your project?<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Can you boil down this issue to a minimal example to reproduce this error?<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; What seems odd to me is that it sounds like osg92-osgDB.dll is export the std::basic_ifstream. So this may not even be an ITK issue.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Brad<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; On Feb 4, 2013, at 6:53 AM, Bruno Ronzani &lt;<a href="mailto:bruno.ronzani@oyez.fr">bruno.ronzani@oyez.fr</a>&gt; wrote:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Hello everyone,<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; I am doing all I can to build ITK on VS2012, but I am experiencing a<br>
&gt;&gt;&gt;&gt; lot of trouble...<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; - I am using CMake.<br>
&gt;&gt;&gt;&gt; - If I choose to build &quot;static&quot; (build_shared unchecked) ITK,<br>
&gt;&gt;&gt;&gt; everything compiles fine.<br>
&gt;&gt;&gt;&gt; - if I choose to build &quot;shared&quot; (build_shared checked), everything<br>
&gt;&gt;&gt;&gt; compiles fine too. One ITKCommon-4.0.dll is created.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Now here the trouble...<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; When I try to compile a sample program with OpenSceneGraph, I have a<br>
&gt;&gt;&gt;&gt; bunch of link errors of type :<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; ITKMetaIO-4.0.lib(metaObject.obj) : error LNK2005: &quot;public: __thiscall<br>
&gt;&gt;&gt;&gt; std::basic_ifstream&lt;char,struct std::char_traits&lt;char&gt;<br>
&gt;&gt;&gt;&gt;&gt; ::basic_ifstream&lt;char,struct std::char_traits&lt;char&gt; &gt;(void)&quot;<br>
&gt;&gt;&gt;&gt; (??0?$basic_ifstream@DU?$char_traits@D@std@@@std@@QAE@XZ) already<br>
&gt;&gt;&gt;&gt; defined in osgDB.lib(osg92-osgDB.dll)<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Apparently, this kind of errors appear when a static library is linked<br>
&gt;&gt;&gt;&gt; with a dynamic one...<br>
&gt;&gt;&gt;&gt; I&#39;ve checked in my &quot;shared&quot; ITK solution project : most of the<br>
&gt;&gt;&gt;&gt; projects are still built in static mode.<br>
&gt;&gt;&gt;&gt; I tried to force the &quot;Use MFC in a Shared DLL&quot; but it doesn&#39;t change anything.<br>
&gt;&gt;&gt;&gt; If I force the Configuration Type to .dll, then I have a bunch of link<br>
&gt;&gt;&gt;&gt; errors, like :<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; unresolved external symbol __imp__RegCloseKey@4 referenced in function<br>
&gt;&gt;&gt;&gt; &quot;public: static bool __cdecl<br>
&gt;&gt;&gt;&gt; itksys::SystemTools::DeleteRegistryValue(char const *,enum<br>
&gt;&gt;&gt;&gt; itksys::SystemTools::KeyWOW64)&quot;<br>
&gt;&gt;&gt;&gt; (?DeleteRegistryValue@SystemTools@itksys@@SA_NPBDW4KeyWOW64@12@@Z)<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Any idea ?<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Thank you very much !<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Cheers,<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Bruno<br>
&gt;&gt;&gt;&gt; _______________________________________________<br>
&gt;&gt;&gt;&gt; Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Visit other Kitware open-source projects at<br>
&gt;&gt;&gt;&gt; <a href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Kitware offers ITK Training Courses, for more information visit:<br>
&gt;&gt;&gt;&gt; <a href="http://kitware.com/products/protraining.php" target="_blank">http://kitware.com/products/protraining.php</a><br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Please keep messages on-topic and check the ITK FAQ at:<br>
&gt;&gt;&gt;&gt; <a href="http://www.itk.org/Wiki/ITK_FAQ" target="_blank">http://www.itk.org/Wiki/ITK_FAQ</a><br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Follow this link to subscribe/unsubscribe:<br>
&gt;&gt;&gt;&gt; <a href="http://www.itk.org/mailman/listinfo/insight-developers" target="_blank">http://www.itk.org/mailman/listinfo/insight-developers</a><br>
&gt;&gt;&gt;<br>
_______________________________________________<br>
Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
<br>
Visit other Kitware open-source projects at<br>
<a href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
<br>
Kitware offers ITK Training Courses, for more information visit:<br>
<a href="http://kitware.com/products/protraining.php" target="_blank">http://kitware.com/products/protraining.php</a><br>
<br>
Please keep messages on-topic and check the ITK FAQ at:<br>
<a href="http://www.itk.org/Wiki/ITK_FAQ" target="_blank">http://www.itk.org/Wiki/ITK_FAQ</a><br>
<br>
Follow this link to subscribe/unsubscribe:<br>
<a href="http://www.itk.org/mailman/listinfo/insight-developers" target="_blank">http://www.itk.org/mailman/listinfo/insight-developers</a><br>
</div></div></blockquote></div><br>