[Insight-developers] RE: Examples/GaussianFilter

Miller, James V (CRD) millerjv@crd.ge.com
Tue, 10 Apr 2001 17:10:39 -0400


Luis,

Changing fltk to build with multithreaded dlls was the trick.  You application now builds and
executes.  What type of data can I throw at it?

One concern I have is that in building fltk with multithreaded dlls, the fltk distributed examples no
longer build. Most of their examples have link errors for undefined symbols __argv __argc.  Have you
seen this before?

Jim

-----Original Message-----
From: Luis Ibanez
To: Miller, James V (CRD)
Cc: 'Insight-developers (E-mail) '
Sent: 4/10/2001 3:59 PM
Subject: RE: Examples/GaussianFilter

On Wed, 11 Apr 2001, Miller, James V (CRD) wrote:
> So at a minimum, I would add the alternative directory
> /usr/local/fltk to the include search list and /usr/local/fltk/lib to
the
> lib search list.
>

Sounds good, I'll add them.

BTW it is a bit odd to have to add these directories in several places.
Now they are in :

Unsupported/FltkImageViewer/CMakeList.txt
Unsupported/MetaImage/IView/CMakeList.txt
Examples/GaussianFilter/CMakeList.txt
Examples/ImageRegistration/CMakeList.txt

Is there a way to put them in a central place ?


> Now CMake does assume that the fltk libs would be filed under
subdirectories
> that match its build configurations (Debug, Release, ReleaseMinSize).
It
> looks like Fltk just slaps a "d" on the end of the library name if is
a
> debug library (similar to what Microsoft does).  I made a series of
> subdirectories under fltk/lib for Release and Debug and copied the
> appropriate libraries into these subdirectories.
>

I did a similar thing, maybe we should add that to the README file
since is something that has to be done by hand.

> Thanks for checking in the missing files, I am closer to getting a
build.  I
> am now getting duplicate symbols from LIBCMT.lib and MSVCRT.lib. VC++
is
> suggesting using the /NODEFAULTLIB library.  Did you have this
problem?
>

It is due to the flags that should be activated in FLTK.
All the libraries we use have to be compiled with exactly the same
compiling options:

Debug Multithreaded DLL
struct member alignment 8 bytes
Exceptions enabled
RTTI enabled

and so on...

You'll have to recompile FLTK using the ITK setup.


You should not need the /NODEFAULTLIB option...

I'm not having this problem with the GaussianFilter example,
but with another external project,... and the cause seems to
be the same.